coreboot/src/mainboard
Patrick Georgi 199b09cb7a x86 realmode: Use x86emu register file + defines
By using the (global) register file as defined by x86emu,
we can use the same register access for YABEL and realmode
interrupt handlers.

- the x86 realmode interrupt handlers changed in signature
- to access registers, use X86_$REGNAME now (eg. X86_EAX)
- x86_exception_handler still uses struct eregs *regs to
  avoid spilling the x86emu register file stuff everywhere

Coccinelle script that handled most of this commit:
  @ inthandler @
  identifier FUNC, regs;
  @@
  int FUNC(
  -struct eregs *regs
  +void
   )
  { ... }

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->eax
  +X86_EAX

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->ebx
  +X86_EBX

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->ecx
  +X86_ECX

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->edx
  +X86_EDX

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->esi
  +X86_ESI

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->edi
  +X86_EDI

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->eflags
  +X86_EFLAGS

  @ depends on inthandler @
  identifier regs;
  @@
  -regs->vector
  +M.x86.intno

Change-Id: I60cc2c36646fe4b7f97457b1e297e3df086daa36
Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com>
Reviewed-on: http://review.coreboot.org/1891
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2012-11-24 20:11:46 +01:00
..
a-trend Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
aaeon Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
abit Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
advansus Fix Kconfig GENERATE_*_TABLE usage 2012-11-16 01:15:55 +01:00
advantech Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
amd Persimmon: Disable the unused GPP PCIe clocks 2012-11-20 23:59:54 +01:00
aopen Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
arima Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
artecgroup Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
asi Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
asrock Drop CONFIG_HAVE_BUS_CONFIG, clean up Kconfig 2012-11-16 01:11:16 +01:00
asus Unify use of bool config variables 2012-11-20 21:56:05 +01:00
avalue Drop unneeded BOARD_HAS_FADT option 2012-11-16 01:13:02 +01:00
axus Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
azza Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
bachmann Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
bcom Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
bifferos Drop redundant CHIP_NAME in mainboard.c 2012-11-06 21:59:21 +01:00
biostar Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
broadcom Drop CONFIG_HAVE_BUS_CONFIG, clean up Kconfig 2012-11-16 01:11:16 +01:00
compaq Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
digitallogic Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
eaglelion Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
ecs Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
emulation Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
getac Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
gigabyte Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
hp Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
ibase Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
ibm Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
iei Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
intel x86 realmode: Use x86emu register file + defines 2012-11-24 20:11:46 +01:00
iwave Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
iwill Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
jetway Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
kontron x86 realmode: Use x86emu register file + defines 2012-11-24 20:11:46 +01:00
lanner Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
lenovo Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
lippert Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
mitac Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
msi Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
nec Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
newisys Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
nokia Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
nvidia Drop CONFIG_HAVE_BUS_CONFIG, clean up Kconfig 2012-11-16 01:11:16 +01:00
pcengines Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
rca Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
roda x86 realmode: Use x86emu register file + defines 2012-11-24 20:11:46 +01:00
samsung x86 realmode: Use x86emu register file + defines 2012-11-24 20:11:46 +01:00
siemens x86 realmode: Use x86emu register file + defines 2012-11-24 20:11:46 +01:00
soyo Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
sunw Drop CONFIG_HAVE_BUS_CONFIG, clean up Kconfig 2012-11-16 01:11:16 +01:00
supermicro Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
technexion x86 realmode: Use x86emu register file + defines 2012-11-24 20:11:46 +01:00
technologic Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
televideo Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
thomson Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
traverse Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
tyan Unify use of bool config variables 2012-11-20 21:56:05 +01:00
via Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
winent Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
wyse Fix PIRQ routing abstraction 2012-11-16 05:07:28 +01:00
Kconfig SandyBridge/IvyBridge: Add IFD and ME firmware automatically 2012-11-13 00:24:26 +01:00