On Fri, 30 Oct 2009 17:32:03 +0530 (IST), mansoor@iwavesystems.com wrote:
On Fri, 30 Oct 2009 10:11:36 +0530, "Mansoor" mansoor@iwavesystems.com wrote:
-----Original Message----- From: Joe [mailto:joe@settoplinux.org] Sent: Thursday, October 29, 2009 7:32 PM To: Mansoor Cc: 'coreboot' Subject: Re: [coreboot] Error executing VGA ROM with coreboot
On 10/29/2009 07:38 AM, Mansoor wrote:
Hi
I keep getting "ILLEGAL EXTENDED X86 OPCODE!" from my VGA ROM while trying run VGA ROM in coreboot.
I tried x86emu, yabel and real mode for running VGA ROM with no
luck.
But the same VGA ROM is running with seabios.
I am attaching the boot logs with x86emu, real mode and with
seabios.
Any help?
What is the big difference while executing VGA ROM in coreboot and
seabios?
Why coreboot can't run a VGA ROM which seabios can?
Hmm looks like your getting Unexpected Exception errors. Something is not initializing correctly. Memory maybe?
I don't think so, because with seabios I am able to load Linux in GUI
mode.
Only with coreboot I am facing these issues for initializing VGA ROM.
You could always try Debugging the Unexpected Exception errors with GDB, this may give you a clue on what the problem is.
Actually i tried GDB and failed to build the image.. I got section overlap error and was not able to solve it.
What i didnt understand is
Why coreboot can't run a VGA ROM which seabios can? What is the big difference while executing VGA ROM in coreboot and seabios?
From the log you can see seabios emits some warning messages(fail handle_155fXX) but still it continues to run the VGA ROM, where x86emu or realmode hangs with error messages
in seabios fail handle_155fXX:23(86):
a=a0005f38 b=000008c1 c=00000003 d=0000c000 ds=a000 es=c000 ss=a000
si=00000000 di=00000003 bp=000077cc sp=000077be cs=c000 ip=3115 f=0002
Real mode
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
well lets see, The coreboot rom emulators are completely different beasts than seabios. Perhaps you take a look at the differences in the interrupt handlers to find out the differences?
I would suggest running YABEL in full DEBUG mode, YABEL is able to output rom PCI accesses, io accesses, interrupt calls etc. I would also suggest if you do this to output your bootlog to a text file in minicom, because it may run for several hours and get quite large. I would be glad to take a look at it and see if I can see what is going on.