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