# SPDX-License-Identifier: GPL-2.0-only if ARCH_IXP4XX menu "Intel IXP4xx Implementation Options" comment "IXP4xx Platforms" config MACH_IXP4XX_OF bool prompt "Device Tree IXP4xx boards" default y select ARM_APPENDED_DTB # Old Redboot bootloaders deployed select I2C select I2C_IOP3XX select PCI select USE_OF help Say 'Y' here to support Device Tree-based IXP4xx platforms. config MACH_AVILA bool "Avila" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support the Gateworks Avila Network Platform. For more information on this platform, see . config MACH_LOFT bool "Loft" depends on MACH_AVILA help Say 'Y' here if you want your kernel to support the Giant Shoulder Inc Loft board (a minor variation on the standard Gateworks Avila Network Platform). config ARCH_ADI_COYOTE bool "Coyote" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support the ADI Engineering Coyote Gateway Reference Platform. For more information on this platform, see . config MACH_GATEWAY7001 bool "Gateway 7001" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support Gateway's 7001 Access Point. For more information on this platform, see http://openwrt.org config ARCH_IXDP425 bool "IXDP425" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support Intel's IXDP425 Development Platform (Also known as Richfield). For more information on this platform, see . config MACH_IXDPG425 bool "IXDPG425" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support Intel's IXDPG425 Development Platform (Also known as Montajade). For more information on this platform, see . config MACH_IXDP465 bool "IXDP465" help Say 'Y' here if you want your kernel to support Intel's IXDP465 Development Platform (Also known as BMP). For more information on this platform, see . config MACH_GORAMO_MLR bool "GORAMO Multi Link Router" help Say 'Y' here if you want your kernel to support GORAMO MultiLink router. config MACH_KIXRP435 bool "KIXRP435" help Say 'Y' here if you want your kernel to support Intel's KIXRP435 Reference Platform. For more information on this platform, see . # # IXCDP1100 is the exact same HW as IXDP425, but with a different machine # number from the bootloader due to marketing monkeys, so we just enable it # by default if IXDP425 is enabled. # config ARCH_IXCDP1100 bool depends on ARCH_IXDP425 default y config ARCH_PRPMC1100 bool "PrPMC1100" help Say 'Y' here if you want your kernel to support the Motorola PrPCM1100 Processor Mezanine Module. For more information on this platform, see . config ARCH_IXDP4XX bool depends on ARCH_IXDP425 || MACH_IXDP465 || MACH_KIXRP435 default y config MACH_FSG bool prompt "Freecom FSG-3" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support Freecom's FSG-3 device. For more information on this platform, see http://www.nslu2-linux.org/wiki/FSG3/HomePage config MACH_ARCOM_VULCAN bool prompt "Arcom/Eurotech Vulcan" depends on IXP4XX_PCI_LEGACY help Say 'Y' here if you want your kernel to support Arcom's Vulcan board. # # Certain registers and IRQs are only enabled if supporting IXP465 CPUs # config CPU_IXP46X bool depends on MACH_IXDP465 default y config CPU_IXP43X bool depends on MACH_KIXRP435 default y config MACH_GTWX5715 bool "Gemtek WX5715 (Linksys WRV54G)" depends on ARCH_IXP4XX depends on IXP4XX_PCI_LEGACY help This board is currently inside the Linksys WRV54G Gateways. IXP425 - 266mhz 32mb SDRAM 8mb Flash miniPCI slot 0 does not have a card connector soldered to the board miniPCI slot 1 has an ISL3880 802.11g card (Prism54) npe0 is connected to a Kendin KS8995M Switch (4 ports) npe1 is the "wan" port "Console" UART is available on J11 as console "High Speed" UART is n/c (as far as I can tell) 20 Pin ARM/Xscale JTAG interface on J2 comment "IXP4xx Options" config IXP4XX_PCI_LEGACY bool "IXP4xx legacy PCI driver support" depends on PCI help Selects legacy PCI driver. Not recommended for new development. config IXP4XX_INDIRECT_PCI bool "Use indirect PCI memory access" depends on IXP4XX_PCI_LEGACY help IXP4xx provides two methods of accessing PCI memory space: 1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB). To access PCI via this space, we simply ioremap() the BAR into the kernel and we can use the standard read[bwl]/write[bwl] macros. This is the preferred method due to speed but it limits the system to just 64MB of PCI memory. This can be problematic if using video cards and other memory-heavy devices. 2) If > 64MB of memory space is required, the IXP4xx can be configured to use indirect registers to access the whole PCI memory space. This currently allows for up to 1 GB (0x10000000 to 0x4FFFFFFF) of memory on the bus. The disadvantage of this is that every PCI access requires three local register accesses plus a spinlock, but in some cases the performance hit is acceptable. In addition, you cannot mmap() PCI devices in this case due to the indirect nature of the PCI window. By default, the direct method is used. Choose this option if you need to use the indirect method instead. If you don't know what you need, leave this option unselected. endmenu endif