[U-Boot] PCI on mpc832x?
Kumar Gala
galak at kernel.crashing.org
Wed Apr 29 14:35:19 CEST 2009
> I think I got the mapping of memory space now, thanks.
>
> A few questions though. I have noted that some boards map the PCI IO
> space
> to 0x0 and some use the same address space as the CPU. If I use
> the CPU address space as PCI IO space I get(in linux):
> PCI 0000:00 Cannot reserve Legacy IO [0x00-0xfff]
> I don't understand what is best to do here, stay on 0x0 or move to CPU
> address space?
PCI IO should normally be at 0 in the "PCI address space" and can be
at any CPU physical address.
> with CONFIG_PCI_QUIRKS=y Linux prints:
> PCI: Bus scan for 0000:00 returning with max=00
> pci_bus 0000:00: resource 0 io: [0x00-0xfffff]
> pci_bus 0000:00: resource 1 mem: [0x80000000-0x8fffffff]
> pci_bus 0000:00: resource 2 mem: [0x90000000-0x9fffffff]
>
> But if I turn off CONFIG_PCI_QUIRKS I get:
> PCI: Bus scan for 0000:00 returning with max=00
> PCI: Cannot allocate resource region 0 of device 0000:00:00.0, will
> remap
> PCI: Cannot allocate resource region 2 of device 0000:00:00.0, will
> remap
> pci 0000:00:00.0: BAR 2: got res [0x80000000-0x87ffffff] bus
> [0x80000000-0x87ffffff] flags 0x2002120c
> pci 0000:00:00.0: BAR 2: moved to bus [0x80000000-0x87ffffff] flags
> 0x2120c
> pci 0000:00:00.0: BAR 0: got res [0x90000000-0x901fffff] bus
> [0x90000000-0x901fffff] flags 0x20020200
> pci 0000:00:00.0: BAR 0: moved to bus [0x90000000-0x901fffff] flags
> 0x20200
> pci_bus 0000:00: resource 0 io: [0x00-0xfffff]
> pci_bus 0000:00: resource 1 mem: [0x80000000-0x8fffffff]
> pci_bus 0000:00: resource 2 mem: [0x90000000-0x9fffffff]
>
> The BAR ... printout feels a bit off. Why do I need quirks on for
> a clean boot?
Quirks are required for FSL based PCI controllers. I know I've got a
change in current kernels to do:
config FSL_PCI
bool
select PPC_INDIRECT_PCI
select PCI_QUIRKS
- k
More information about the U-Boot
mailing list