On Fri, 24 Apr 2009 08:15:58 -0700, ron minnich rminnich@gmail.com wrote:
On Wed, Apr 22, 2009 at 8:58 PM, Joseph Smith joe@settoplinux.org
wrote:
YAHOO!!!! I HAVE VGA!! Well there is definitely something wacked out on x86emu and yabel. For
the
hell of it I tried VM86 and VGA comes right up with no errors. And VM86
is
way faster x86emu and yabel. With my debug level still at 9 and a 5
second
delay for filo, I am at the filo prompt in 15 seconds :-) This used to
take
about 25-30 seconds with x86emu.
One question, is this normal for VM86? (from bootlog)
PCI: 00:02.0 init
On mainboard, rom address for PCI: 00:02.0 = fff00000
PCI Expansion ROM, signature 0xaa55, INIT size 0x10000, data ptr 0x0040
PCI ROM Image, Vendor 8086, Device 3577,
PCI ROM Image, Class Code 030000, Code Type 00
copying VGA ROM Image from fff00000 to 0xc0000, 0x10000 bytes
biosint: INT# 0xd
biosint: eax 0x23fddfef ebx 0x0 ecx 0x2f6 edx 0x3b4
biosint: ebp 0x10fac esp 0xc89 edi 0x4028 esi 0x24028
biosint: ip 0xffff cs 0xc000 flags 0x813
biosint: Oops, exception 13
this is really, really bad.
You don't want this to happen.
It's going to be way easier to debug if you run in linux, user more x86emu, and turn on instruction tracing. Something's going very wrong.
Many of these vga bioses are very badly written and will fail on weird ways. I think you've got one.
Well, After alot of trial and error, I think I may have found the issue. I still don't know how to fix it yet though. It appears to be something with IRQ Routing. I think the graphics is NOT supposed to have an IRQ asigned to it. In the past I have seen bios settings that you have an option to asign an IRQ to the graphics or not. If you look at lspci from the proprietary bios everything has an IRQ but the graphics device. I setup the irq routing and PIRQ's just the way the proprietary bios is and it boots ok (no errors from VM86) but in Linux it says everything is IRQ 0. In the current coreboot code the IRQ routing is setup the same as the RM4100.
Can I just remove the graphics device in irq_tables.c? Or will that really screw up the routing?
I have three different vga bios's and they all do the same thing.