[OpenBIOS] OpenBIOS SVN r416 breaks coreboot-v3
Mark Cave-Ayland
mark.cave-ayland at siriusit.co.uk
Wed Jan 28 16:42:24 CET 2009
Aurelien Jarno wrote:
> The rationale is available here:
> http://lists.openbios.org/pipermail/openbios/2009-January/003391.html
Thanks for link - I must have missed that whilst scanning the archives :)
> This commit fixes two different problems encountered on SPARC64 and
> PowerPC. First of all it makes sure that no PCI device get allocated
> port 0, which doesn't exists.
>
> Secondly it fixes problems with non-PCI devices that are using I/O ports
> at fixed location. This includes the video card, i8259, rtc, serial
> port, hard-disk controller, etc. Without this patch, the PCI cards are
> getting allocated the I/O ports of those devices, thus causing crashes.
>
> I wonder why it causes problem on x86. What is the initial value of
> arch->io_base? I am unable to find that looking at the code.
Well, I just added the following diff to my OpenBIOS build (latest SVN):
Index: drivers/pci.c
===================================================================
--- drivers/pci.c (revision 428)
+++ drivers/pci.c (working copy)
@@ -762,6 +762,9 @@
mem_base = arch->mem_base;
/* I/O ports under 0x400 are used by devices mapped at fixed
location. */
+
+ printk("### io_base: %x\n", arch->io_base);
+
io_base = arch->io_base + 0x400;
path = strdup("");
for (bus = 0; bus<0x100; bus++) {
...and in my output I got this:
### io_base: 0
Hmmm. I guess that explains why it is crashing.
ATB,
Mark.
--
Mark Cave-Ayland
Sirius Corporation - The Open Source Experts
http://www.siriusit.co.uk
T: +44 870 608 0063
More information about the OpenBIOS
mailing list