![Dan Williams](/assets/img/avatar_default.png)
Currently the iop3xx platform support code assumes that RedBoot is the bootloader and has already initialized the ATU. Linux should handle this initialization for three reasons: 1/ The memory map that RedBoot sets up is not optimal (page_to_dma and virt_to_phys return different addresses). The effect of this is that using the dma mapping API for the internal bus dma units generates pci bus addresses that are incorrect for the internal bus. 2/ Not all iop platforms use RedBoot 3/ If the ATU is already initialized it indicates that the iop is an add-in card in another host, it does not own the PCI bus, and should not be re-initialized. Changelog: * rather than change nr_controllers to zero, simply do not call pci_common_init Cc: Lennert Buytenhek <kernel@wantstofly.org> Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
30 lines
669 B
Plaintext
30 lines
669 B
Plaintext
if ARCH_IOP33X
|
|
|
|
menu "IOP33x Implementation Options"
|
|
|
|
comment "IOP33x Platform Types"
|
|
|
|
config ARCH_IQ80331
|
|
bool "Enable support for IQ80331"
|
|
help
|
|
Say Y here if you want to run your kernel on the Intel IQ80331
|
|
evaluation kit for the IOP331 chipset.
|
|
|
|
config MACH_IQ80332
|
|
bool "Enable support for IQ80332"
|
|
help
|
|
Say Y here if you want to run your kernel on the Intel IQ80332
|
|
evaluation kit for the IOP332 chipset.
|
|
|
|
config IOP3XX_ATU
|
|
bool "Enable the PCI Controller"
|
|
default y
|
|
help
|
|
Say Y here if you want the IOP to initialize its PCI Controller.
|
|
Say N if the IOP is an add in card, the host system owns the PCI
|
|
bus in this case.
|
|
|
|
endmenu
|
|
|
|
endif
|