Kconfig 7.17 KB
Newer Older
1
# SPDX-License-Identifier: GPL-2.0-only
Linus Torvalds's avatar
Linus Torvalds committed
2
3
4
5
6
7
if ARCH_IXP4XX

menu "Intel IXP4xx Implementation Options"

comment "IXP4xx Platforms"

8
9
10
11
12
13
14
15
16
17
18
19
config MACH_IXP4XX_OF
	bool
	prompt "Devce 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.

20
21
config MACH_NSLU2
	bool
22
	prompt "Linksys NSLU2"
23
	depends on IXP4XX_PCI_LEGACY
24
25
26
27
28
	help
	  Say 'Y' here if you want your kernel to support Linksys's
	  NSLU2 NAS device. For more information on this platform,
	  see http://www.nslu2-linux.org

29
config MACH_AVILA
Linus Torvalds's avatar
Linus Torvalds committed
30
	bool "Avila"
31
	depends on IXP4XX_PCI_LEGACY
Linus Torvalds's avatar
Linus Torvalds committed
32
33
34
	help
	  Say 'Y' here if you want your kernel to support the Gateworks
	  Avila Network Platform. For more information on this platform,
35
	  see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
36

37
38
39
40
41
42
43
44
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).

Linus Torvalds's avatar
Linus Torvalds committed
45
46
config ARCH_ADI_COYOTE
	bool "Coyote"
47
	depends on IXP4XX_PCI_LEGACY
Linus Torvalds's avatar
Linus Torvalds committed
48
49
50
	help
	  Say 'Y' here if you want your kernel to support the ADI 
	  Engineering Coyote Gateway Reference Platform. For more
51
	  information on this platform, see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
52

53
54
config MACH_GATEWAY7001
	bool "Gateway 7001"
55
	depends on IXP4XX_PCI_LEGACY
56
57
58
59
60
	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

61
62
config MACH_WG302V2
	bool "Netgear WG302 v2 / WAG302 v2"
63
	depends on IXP4XX_PCI_LEGACY
64
65
66
67
68
	help
	  Say 'Y' here if you want your kernel to support Netgear's
	  WG302 v2 or WAG302 v2 Access Points. For more information
	  on this platform, see http://openwrt.org

Linus Torvalds's avatar
Linus Torvalds committed
69
70
config ARCH_IXDP425
	bool "IXDP425"
71
	depends on IXP4XX_PCI_LEGACY
Linus Torvalds's avatar
Linus Torvalds committed
72
73
74
	help
	  Say 'Y' here if you want your kernel to support Intel's 
	  IXDP425 Development Platform (Also known as Richfield).  
75
	  For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
76
77
78

config MACH_IXDPG425
	bool "IXDPG425"
79
	depends on IXP4XX_PCI_LEGACY
Linus Torvalds's avatar
Linus Torvalds committed
80
81
82
	help
	  Say 'Y' here if you want your kernel to support Intel's
	  IXDPG425 Development Platform (Also known as Montajade).
83
	  For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
84
85
86
87
88
89

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).
90
	  For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
91

92
93
94
95
96
97
config MACH_GORAMO_MLR
	bool "GORAMO Multi Link Router"
	help
	  Say 'Y' here if you want your kernel to support GORAMO
	  MultiLink router.

98
99
100
101
102
config MACH_KIXRP435
	bool "KIXRP435"
	help
	  Say 'Y' here if you want your kernel to support Intel's
	  KIXRP435 Reference Platform.
103
	  For more information on this platform, see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119

#
# 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
120
	  this platform, see <file:Documentation/arm/ixp4xx.rst>.
Linus Torvalds's avatar
Linus Torvalds committed
121

122
123
124
config MACH_NAS100D
	bool
	prompt "NAS100D"
125
	depends on IXP4XX_PCI_LEGACY
126
127
128
129
130
	help
	  Say 'Y' here if you want your kernel to support Iomega's
	  NAS 100d device. For more information on this platform,
	  see http://www.nslu2-linux.org/wiki/NAS100d/HomePage

131
132
133
config MACH_DSMG600
	bool
	prompt "D-Link DSM-G600 RevA"
134
	depends on IXP4XX_PCI_LEGACY
135
136
137
138
139
	help
	  Say 'Y' here if you want your kernel to support D-Link's
	  DSM-G600 RevA device. For more information on this platform,
	  see http://www.nslu2-linux.org/wiki/DSMG600/HomePage

Linus Torvalds's avatar
Linus Torvalds committed
140
141
config	ARCH_IXDP4XX
	bool
142
	depends on ARCH_IXDP425 || MACH_IXDP465 || MACH_KIXRP435
Linus Torvalds's avatar
Linus Torvalds committed
143
144
	default y

145
146
147
config MACH_FSG
	bool
	prompt "Freecom FSG-3"
148
	depends on IXP4XX_PCI_LEGACY
149
150
151
152
153
	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

154
155
156
config MACH_ARCOM_VULCAN
	bool
	prompt "Arcom/Eurotech Vulcan"
157
	depends on IXP4XX_PCI_LEGACY
158
159
160
161
	help
	  Say 'Y' here if you want your kernel to support Arcom's
	  Vulcan board.

Linus Torvalds's avatar
Linus Torvalds committed
162
163
164
165
166
167
168
169
#
# Certain registers and IRQs are only enabled if supporting IXP465 CPUs
#
config CPU_IXP46X
	bool
	depends on MACH_IXDP465
	default y

170
171
172
173
174
config CPU_IXP43X
	bool
	depends on MACH_KIXRP435
	default y

Linus Torvalds's avatar
Linus Torvalds committed
175
176
177
config MACH_GTWX5715
	bool "Gemtek WX5715 (Linksys WRV54G)"
	depends on ARCH_IXP4XX
178
	depends on IXP4XX_PCI_LEGACY
Linus Torvalds's avatar
Linus Torvalds committed
179
180
181
182
183
184
185
186
187
188
189
190
191
192
	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

193
194
195
196
197
198
199
200
config MACH_DEVIXP
	bool "Omicron DEVIXP"
	help
	  Say 'Y' here if you want your kernel to support the DEVIXP
	  board from OMICRON electronics GmbH.

config MACH_MICCPT
	bool "Omicron MICCPT"
201
	depends on IXP4XX_PCI_LEGACY
202
203
204
205
206
207
208
209
210
211
	help
	  Say 'Y' here if you want your kernel to support the MICCPT
	  board from OMICRON electronics GmbH.

config MACH_MIC256
	bool "Omicron MIC256"
	help
	  Say 'Y' here if you want your kernel to support the MIC256
	  board from OMICRON electronics GmbH.

Linus Torvalds's avatar
Linus Torvalds committed
212
213
comment "IXP4xx Options"

214
215
216
217
218
219
220
config IXP4XX_PCI_LEGACY
	bool "IXP4xx legacy PCI driver support"
	depends on PCI
	help
	  Selects legacy PCI driver.
	  Not recommended for new development.

Linus Torvalds's avatar
Linus Torvalds committed
221
222
config IXP4XX_INDIRECT_PCI
	bool "Use indirect PCI memory access"
223
	depends on IXP4XX_PCI_LEGACY
Linus Torvalds's avatar
Linus Torvalds committed
224
225
226
	help
          IXP4xx provides two methods of accessing PCI memory space:

227
          1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB).
Linus Torvalds's avatar
Linus Torvalds committed
228
229
230
             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
231
             limits the system to just 64MB of PCI memory. This can be
Matt LaPlante's avatar
Matt LaPlante committed
232
             problematic if using video cards and other memory-heavy devices.
233
234
235
236
237
238
239
240
241

	  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.
Linus Torvalds's avatar
Linus Torvalds committed
242
243
244
245
246
247
248
249

	  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