On Sat, 28 Jul 2007 14:13:06 -0400 Jeff Garzik <[EMAIL PROTECTED]> wrote:
> Yoichi Yuasa wrote: > > Hi, > > > > I got the following error on MIPS Cobalt. > > MIPS Cobalt has the 0x10000000 offset between resource and bus region. > > > > PCI: Unable to reserve I/O region #1:[EMAIL PROTECTED] for device > > 0000:00:09.1 > > pata_via 0000:00:09.1: failed to request/iomap BARs for port 0 (errno=-16) > > PCI: Unable to reserve I/O region #3:[EMAIL PROTECTED] for device > > 0000:00:09.1 > > pata_via 0000:00:09.1: failed to request/iomap BARs for port 1 (errno=-16) > > pata_via 0000:00:09.1: no available native port > > > > At this point, these resources should be the bus regions. > > > > Signed-off-by: Yoichi Yuasa <[EMAIL PROTECTED]> > > I'm not sure I understand what's going on here... could you or someone > provide additional explanation as to why this is a fix? The legacy mode IDE resources set the following order. pci_setup_device() Legacy mode ATA controllers have fixed addresses. IDE resources: 0x1F0-0x1F7, 0x3F6, 0x170-0x177, 0x376 | V pcibios_fixup_bus() MIPS Cobalt PCI bus have the -0x10000000 offset from PCI resources. pcibios_fixup_bus() fix PCI bus regions. 0x1F0 - 0x10000000 = 0xF00001F0 | V ata_pci_init_one() PCI: Unable to reserve I/O region #1:[EMAIL PROTECTED] for device 0000:00:09.1 In some architectures, PCI bus have the offset from PCI resource. They are adjusted by pcibios_fixup_bus(). For this reason, pci_setup_device() should set PCI bus regions. Yoichi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/