mansoor@iwavesystems.com wrote:
Why coreboot can't run a VGA ROM which seabios can? What is the big difference while executing VGA ROM in coreboot and seabios?
Joe already mentioned it, but there is a big different in the amount and quality of legacy BIOS interrupt services available at VGA ROM run time depending on if it is run by coreboot, or by SeaBIOS.
coreboot doesn't want to have any BIOS services, while SeaBIOS strives to be a fully featured BIOS.
Real mode stub @00000500: 422 bytes Calling Option ROM... oprom: INT# 0x8e41a854 oprom: eax: 8a000885 ebx: 0e21e039 ecx: 00028101 edx: 2989b606 oprom: ebp: 58000a58 esp: c0010004 edi: c668404c esi: c2650304 oprom: ip: e6b0 cs: 8831 flags: 00002900 Unexpected Exception: 6 @ 10:f6fdd07d - Halting Code: 0 eflags: 00010012 eax: 00007776 ebx: 00008831 ecx: 0010ef73 edx: 001059b1 edi: c0010004 esi: 8e41a854 ebp: 00002900 esp: 0000774a
8831:eb60 doesn't look like a place where the VGA ROM should be executing.
Joe's suggestion to trace what is actually going on in the VGA ROM is really good. You can use YABEL, or you can use SerialICE together with QEMU. YABEL might be faster than SerialICE though.
//Peter