Change real mode API to allow passing intXX number or entry point and
authorStefan Reinauer <stepan@coresystems.de>
Tue, 11 May 2010 15:39:20 +0000 (15:39 +0000)
committerStefan Reinauer <stepan@openbios.org>
Tue, 11 May 2010 15:39:20 +0000 (15:39 +0000)
commit841af5e01e3e6b017a4f0ab7800fdf14baffd93f
treecf28c9ebadfa364972344949846a9a56531b3ffb
parent48beb8276989f35f5510fbdc101cd2a222a3d21e
Change real mode API to allow passing intXX number or entry point and
some register values from C.

This theoretically fixes non-vga option roms, but it also allows to use
the same assembler code for option roms and vsm.
It will also make using the bootsplash without yabel a lot easier.

Factor out and improve BDA setup, do some rom segment setup for those
option roms that need it.

Don't call the coreboot exception handler if an exception occurs in real
mode. It's only partly usable, but mainly the Kontron 986LCD-M (and other
i945GM boards) choke on an exception #6 (invalid opcode). This particular
issue is not introduced by the changes in this patch but has been around
for quite a while at least.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Patrick Georgi <patrick.georgi@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5543 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
src/devices/oprom/x86.c
src/devices/oprom/x86_asm.S
src/northbridge/via/cx700/cx700_vga.c
src/northbridge/via/cx700/northbridge.h
src/northbridge/via/vt8623/northbridge.h
src/northbridge/via/vt8623/vga.c
src/northbridge/via/vx800/northbridge.h
src/northbridge/via/vx800/vga.c