[coreboot] IRQ problems under qemu
tom at dbservice.com
Fri Dec 5 09:35:21 CET 2008
When I tried to run coreboot under qemu, I was at first positively
surprised how well the things worked. The BIOS + linux kernel payload
booted in no time! But when I then tried to set up networking, I
couldn't get that to work. Somehow the linux kernel couldn't locate the
interrupts of the NIC. After some digging I found out that coreboot
doesn't provide ACPI tables and instead uses PCI IRQ table (I had to
extract this table from a running qemu system using the getpir utility
and then copy it to coreboot, if you want that patch, I can send that
too). Coreboot copies this table at runtime into memory at 0xf0000.
Apparently 0xf0000-0xfffff is part of the ISA BIOS, and qemu marks this
range as read-only.
The attached patch for qemu fixes that and also cleans up some of the
memory initialization. Instead of marking the ISA BIOS as read-only, it
copies that part from the BIOS image into the appropriate place (at
0xf0000-0xfffff) and leaves the memory as read-write.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
More information about the coreboot