1# SPDX-License-Identifier: GPL-2.0-only 2if ARCH_IXP4XX 3 4menu "Intel IXP4xx Implementation Options" 5 6comment "IXP4xx Platforms" 7 8config MACH_IXP4XX_OF 9 bool 10 prompt "Device Tree IXP4xx boards" 11 default y 12 select ARM_APPENDED_DTB # Old Redboot bootloaders deployed 13 select I2C 14 select I2C_IOP3XX 15 select PCI 16 select USE_OF 17 help 18 Say 'Y' here to support Device Tree-based IXP4xx platforms. 19 20config MACH_AVILA 21 bool "Avila" 22 depends on IXP4XX_PCI_LEGACY 23 help 24 Say 'Y' here if you want your kernel to support the Gateworks 25 Avila Network Platform. For more information on this platform, 26 see <file:Documentation/arm/ixp4xx.rst>. 27 28config MACH_LOFT 29 bool "Loft" 30 depends on MACH_AVILA 31 help 32 Say 'Y' here if you want your kernel to support the Giant 33 Shoulder Inc Loft board (a minor variation on the standard 34 Gateworks Avila Network Platform). 35 36config ARCH_ADI_COYOTE 37 bool "Coyote" 38 depends on IXP4XX_PCI_LEGACY 39 help 40 Say 'Y' here if you want your kernel to support the ADI 41 Engineering Coyote Gateway Reference Platform. For more 42 information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 43 44config MACH_GATEWAY7001 45 bool "Gateway 7001" 46 depends on IXP4XX_PCI_LEGACY 47 help 48 Say 'Y' here if you want your kernel to support Gateway's 49 7001 Access Point. For more information on this platform, 50 see http://openwrt.org 51 52config ARCH_IXDP425 53 bool "IXDP425" 54 depends on IXP4XX_PCI_LEGACY 55 help 56 Say 'Y' here if you want your kernel to support Intel's 57 IXDP425 Development Platform (Also known as Richfield). 58 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 59 60config MACH_IXDPG425 61 bool "IXDPG425" 62 depends on IXP4XX_PCI_LEGACY 63 help 64 Say 'Y' here if you want your kernel to support Intel's 65 IXDPG425 Development Platform (Also known as Montajade). 66 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 67 68config MACH_IXDP465 69 bool "IXDP465" 70 help 71 Say 'Y' here if you want your kernel to support Intel's 72 IXDP465 Development Platform (Also known as BMP). 73 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 74 75config MACH_GORAMO_MLR 76 bool "GORAMO Multi Link Router" 77 help 78 Say 'Y' here if you want your kernel to support GORAMO 79 MultiLink router. 80 81config MACH_KIXRP435 82 bool "KIXRP435" 83 help 84 Say 'Y' here if you want your kernel to support Intel's 85 KIXRP435 Reference Platform. 86 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 87 88# 89# IXCDP1100 is the exact same HW as IXDP425, but with a different machine 90# number from the bootloader due to marketing monkeys, so we just enable it 91# by default if IXDP425 is enabled. 92# 93config ARCH_IXCDP1100 94 bool 95 depends on ARCH_IXDP425 96 default y 97 98config ARCH_PRPMC1100 99 bool "PrPMC1100" 100 help 101 Say 'Y' here if you want your kernel to support the Motorola 102 PrPCM1100 Processor Mezanine Module. For more information on 103 this platform, see <file:Documentation/arm/ixp4xx.rst>. 104 105config ARCH_IXDP4XX 106 bool 107 depends on ARCH_IXDP425 || MACH_IXDP465 || MACH_KIXRP435 108 default y 109 110config MACH_FSG 111 bool 112 prompt "Freecom FSG-3" 113 depends on IXP4XX_PCI_LEGACY 114 help 115 Say 'Y' here if you want your kernel to support Freecom's 116 FSG-3 device. For more information on this platform, 117 see http://www.nslu2-linux.org/wiki/FSG3/HomePage 118 119config MACH_ARCOM_VULCAN 120 bool 121 prompt "Arcom/Eurotech Vulcan" 122 depends on IXP4XX_PCI_LEGACY 123 help 124 Say 'Y' here if you want your kernel to support Arcom's 125 Vulcan board. 126 127# 128# Certain registers and IRQs are only enabled if supporting IXP465 CPUs 129# 130config CPU_IXP46X 131 bool 132 depends on MACH_IXDP465 133 default y 134 135config CPU_IXP43X 136 bool 137 depends on MACH_KIXRP435 138 default y 139 140config MACH_GTWX5715 141 bool "Gemtek WX5715 (Linksys WRV54G)" 142 depends on ARCH_IXP4XX 143 depends on IXP4XX_PCI_LEGACY 144 help 145 This board is currently inside the Linksys WRV54G Gateways. 146 147 IXP425 - 266mhz 148 32mb SDRAM 149 8mb Flash 150 miniPCI slot 0 does not have a card connector soldered to the board 151 miniPCI slot 1 has an ISL3880 802.11g card (Prism54) 152 npe0 is connected to a Kendin KS8995M Switch (4 ports) 153 npe1 is the "wan" port 154 "Console" UART is available on J11 as console 155 "High Speed" UART is n/c (as far as I can tell) 156 20 Pin ARM/Xscale JTAG interface on J2 157 158comment "IXP4xx Options" 159 160config IXP4XX_PCI_LEGACY 161 bool "IXP4xx legacy PCI driver support" 162 depends on PCI 163 help 164 Selects legacy PCI driver. 165 Not recommended for new development. 166 167config IXP4XX_INDIRECT_PCI 168 bool "Use indirect PCI memory access" 169 depends on IXP4XX_PCI_LEGACY 170 help 171 IXP4xx provides two methods of accessing PCI memory space: 172 173 1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB). 174 To access PCI via this space, we simply ioremap() the BAR 175 into the kernel and we can use the standard read[bwl]/write[bwl] 176 macros. This is the preferred method due to speed but it 177 limits the system to just 64MB of PCI memory. This can be 178 problematic if using video cards and other memory-heavy devices. 179 180 2) If > 64MB of memory space is required, the IXP4xx can be 181 configured to use indirect registers to access the whole PCI 182 memory space. This currently allows for up to 1 GB (0x10000000 183 to 0x4FFFFFFF) of memory on the bus. The disadvantage of this 184 is that every PCI access requires three local register accesses 185 plus a spinlock, but in some cases the performance hit is 186 acceptable. In addition, you cannot mmap() PCI devices in this 187 case due to the indirect nature of the PCI window. 188 189 By default, the direct method is used. Choose this option if you 190 need to use the indirect method instead. If you don't know 191 what you need, leave this option unselected. 192 193endmenu 194 195endif 196