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_NSLU2 21 bool 22 prompt "Linksys NSLU2" 23 depends on IXP4XX_PCI_LEGACY 24 help 25 Say 'Y' here if you want your kernel to support Linksys's 26 NSLU2 NAS device. For more information on this platform, 27 see http://www.nslu2-linux.org 28 29config MACH_AVILA 30 bool "Avila" 31 depends on IXP4XX_PCI_LEGACY 32 help 33 Say 'Y' here if you want your kernel to support the Gateworks 34 Avila Network Platform. For more information on this platform, 35 see <file:Documentation/arm/ixp4xx.rst>. 36 37config MACH_LOFT 38 bool "Loft" 39 depends on MACH_AVILA 40 help 41 Say 'Y' here if you want your kernel to support the Giant 42 Shoulder Inc Loft board (a minor variation on the standard 43 Gateworks Avila Network Platform). 44 45config ARCH_ADI_COYOTE 46 bool "Coyote" 47 depends on IXP4XX_PCI_LEGACY 48 help 49 Say 'Y' here if you want your kernel to support the ADI 50 Engineering Coyote Gateway Reference Platform. For more 51 information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 52 53config MACH_GATEWAY7001 54 bool "Gateway 7001" 55 depends on IXP4XX_PCI_LEGACY 56 help 57 Say 'Y' here if you want your kernel to support Gateway's 58 7001 Access Point. For more information on this platform, 59 see http://openwrt.org 60 61config MACH_WG302V2 62 bool "Netgear WG302 v2 / WAG302 v2" 63 depends on IXP4XX_PCI_LEGACY 64 help 65 Say 'Y' here if you want your kernel to support Netgear's 66 WG302 v2 or WAG302 v2 Access Points. For more information 67 on this platform, see http://openwrt.org 68 69config ARCH_IXDP425 70 bool "IXDP425" 71 depends on IXP4XX_PCI_LEGACY 72 help 73 Say 'Y' here if you want your kernel to support Intel's 74 IXDP425 Development Platform (Also known as Richfield). 75 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 76 77config MACH_IXDPG425 78 bool "IXDPG425" 79 depends on IXP4XX_PCI_LEGACY 80 help 81 Say 'Y' here if you want your kernel to support Intel's 82 IXDPG425 Development Platform (Also known as Montajade). 83 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 84 85config MACH_IXDP465 86 bool "IXDP465" 87 help 88 Say 'Y' here if you want your kernel to support Intel's 89 IXDP465 Development Platform (Also known as BMP). 90 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 91 92config MACH_GORAMO_MLR 93 bool "GORAMO Multi Link Router" 94 depends on IXP4XX_PCI_LEGACY 95 help 96 Say 'Y' here if you want your kernel to support GORAMO 97 MultiLink router. 98 99config MACH_KIXRP435 100 bool "KIXRP435" 101 help 102 Say 'Y' here if you want your kernel to support Intel's 103 KIXRP435 Reference Platform. 104 For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>. 105 106# 107# IXCDP1100 is the exact same HW as IXDP425, but with a different machine 108# number from the bootloader due to marketing monkeys, so we just enable it 109# by default if IXDP425 is enabled. 110# 111config ARCH_IXCDP1100 112 bool 113 depends on ARCH_IXDP425 114 default y 115 116config ARCH_PRPMC1100 117 bool "PrPMC1100" 118 help 119 Say 'Y' here if you want your kernel to support the Motorola 120 PrPCM1100 Processor Mezanine Module. For more information on 121 this platform, see <file:Documentation/arm/ixp4xx.rst>. 122 123config MACH_NAS100D 124 bool 125 prompt "NAS100D" 126 depends on IXP4XX_PCI_LEGACY 127 help 128 Say 'Y' here if you want your kernel to support Iomega's 129 NAS 100d device. For more information on this platform, 130 see http://www.nslu2-linux.org/wiki/NAS100d/HomePage 131 132config MACH_DSMG600 133 bool 134 prompt "D-Link DSM-G600 RevA" 135 depends on IXP4XX_PCI_LEGACY 136 help 137 Say 'Y' here if you want your kernel to support D-Link's 138 DSM-G600 RevA device. For more information on this platform, 139 see http://www.nslu2-linux.org/wiki/DSMG600/HomePage 140 141config ARCH_IXDP4XX 142 bool 143 depends on ARCH_IXDP425 || MACH_IXDP465 || MACH_KIXRP435 144 default y 145 146config MACH_FSG 147 bool 148 prompt "Freecom FSG-3" 149 depends on IXP4XX_PCI_LEGACY 150 help 151 Say 'Y' here if you want your kernel to support Freecom's 152 FSG-3 device. For more information on this platform, 153 see http://www.nslu2-linux.org/wiki/FSG3/HomePage 154 155config MACH_ARCOM_VULCAN 156 bool 157 prompt "Arcom/Eurotech Vulcan" 158 depends on IXP4XX_PCI_LEGACY 159 help 160 Say 'Y' here if you want your kernel to support Arcom's 161 Vulcan board. 162 163# 164# Certain registers and IRQs are only enabled if supporting IXP465 CPUs 165# 166config CPU_IXP46X 167 bool 168 depends on MACH_IXDP465 169 default y 170 171config CPU_IXP43X 172 bool 173 depends on MACH_KIXRP435 174 default y 175 176config MACH_GTWX5715 177 bool "Gemtek WX5715 (Linksys WRV54G)" 178 depends on ARCH_IXP4XX 179 depends on IXP4XX_PCI_LEGACY 180 help 181 This board is currently inside the Linksys WRV54G Gateways. 182 183 IXP425 - 266mhz 184 32mb SDRAM 185 8mb Flash 186 miniPCI slot 0 does not have a card connector soldered to the board 187 miniPCI slot 1 has an ISL3880 802.11g card (Prism54) 188 npe0 is connected to a Kendin KS8995M Switch (4 ports) 189 npe1 is the "wan" port 190 "Console" UART is available on J11 as console 191 "High Speed" UART is n/c (as far as I can tell) 192 20 Pin ARM/Xscale JTAG interface on J2 193 194config MACH_DEVIXP 195 bool "Omicron DEVIXP" 196 help 197 Say 'Y' here if you want your kernel to support the DEVIXP 198 board from OMICRON electronics GmbH. 199 200config MACH_MICCPT 201 bool "Omicron MICCPT" 202 depends on IXP4XX_PCI_LEGACY 203 help 204 Say 'Y' here if you want your kernel to support the MICCPT 205 board from OMICRON electronics GmbH. 206 207config MACH_MIC256 208 bool "Omicron MIC256" 209 help 210 Say 'Y' here if you want your kernel to support the MIC256 211 board from OMICRON electronics GmbH. 212 213comment "IXP4xx Options" 214 215config IXP4XX_PCI_LEGACY 216 bool "IXP4xx legacy PCI driver support" 217 depends on PCI 218 help 219 Selects legacy PCI driver. 220 Not recommended for new development. 221 222config IXP4XX_INDIRECT_PCI 223 bool "Use indirect PCI memory access" 224 depends on IXP4XX_PCI_LEGACY 225 help 226 IXP4xx provides two methods of accessing PCI memory space: 227 228 1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB). 229 To access PCI via this space, we simply ioremap() the BAR 230 into the kernel and we can use the standard read[bwl]/write[bwl] 231 macros. This is the preferred method due to speed but it 232 limits the system to just 64MB of PCI memory. This can be 233 problematic if using video cards and other memory-heavy devices. 234 235 2) If > 64MB of memory space is required, the IXP4xx can be 236 configured to use indirect registers to access the whole PCI 237 memory space. This currently allows for up to 1 GB (0x10000000 238 to 0x4FFFFFFF) of memory on the bus. The disadvantage of this 239 is that every PCI access requires three local register accesses 240 plus a spinlock, but in some cases the performance hit is 241 acceptable. In addition, you cannot mmap() PCI devices in this 242 case due to the indirect nature of the PCI window. 243 244 By default, the direct method is used. Choose this option if you 245 need to use the indirect method instead. If you don't know 246 what you need, leave this option unselected. 247 248endmenu 249 250endif 251