xref: /linux/arch/arm/mach-ixp4xx/Kconfig (revision 6dc9b80c2a25c5cd1841e9245dff1f22a50e36cb)
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_GATEWAY7001
21	bool "Gateway 7001"
22	depends on IXP4XX_PCI_LEGACY
23	help
24	  Say 'Y' here if you want your kernel to support Gateway's
25	  7001 Access Point. For more information on this platform,
26	  see http://openwrt.org
27
28config MACH_GORAMO_MLR
29	bool "GORAMO Multi Link Router"
30	help
31	  Say 'Y' here if you want your kernel to support GORAMO
32	  MultiLink router.
33
34config ARCH_PRPMC1100
35	bool "PrPMC1100"
36	help
37	  Say 'Y' here if you want your kernel to support the Motorola
38	  PrPCM1100 Processor Mezanine Module. For more information on
39	  this platform, see <file:Documentation/arm/ixp4xx.rst>.
40
41config MACH_FSG
42	bool
43	prompt "Freecom FSG-3"
44	depends on IXP4XX_PCI_LEGACY
45	help
46	  Say 'Y' here if you want your kernel to support Freecom's
47	  FSG-3 device. For more information on this platform,
48	  see http://www.nslu2-linux.org/wiki/FSG3/HomePage
49
50#
51# Certain registers and IRQs are only enabled if supporting IXP465 CPUs
52#
53config CPU_IXP46X
54	bool
55	depends on MACH_IXDP465
56	default y
57
58config CPU_IXP43X
59	bool
60	depends on MACH_KIXRP435
61	default y
62
63config MACH_GTWX5715
64	bool "Gemtek WX5715 (Linksys WRV54G)"
65	depends on ARCH_IXP4XX
66	depends on IXP4XX_PCI_LEGACY
67	help
68		This board is currently inside the Linksys WRV54G Gateways.
69
70		IXP425 - 266mhz
71		32mb SDRAM
72		8mb Flash
73		miniPCI slot 0 does not have a card connector soldered to the board
74		miniPCI slot 1 has an ISL3880 802.11g card (Prism54)
75		npe0 is connected to a Kendin KS8995M Switch (4 ports)
76		npe1 is the "wan" port
77		"Console" UART is available on J11 as console
78		"High Speed" UART is n/c (as far as I can tell)
79		20 Pin ARM/Xscale JTAG interface on J2
80
81comment "IXP4xx Options"
82
83config IXP4XX_PCI_LEGACY
84	bool "IXP4xx legacy PCI driver support"
85	depends on PCI
86	help
87	  Selects legacy PCI driver.
88	  Not recommended for new development.
89
90config IXP4XX_INDIRECT_PCI
91	bool "Use indirect PCI memory access"
92	depends on IXP4XX_PCI_LEGACY
93	help
94          IXP4xx provides two methods of accessing PCI memory space:
95
96          1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB).
97             To access PCI via this space, we simply ioremap() the BAR
98             into the kernel and we can use the standard read[bwl]/write[bwl]
99             macros. This is the preferred method due to speed but it
100             limits the system to just 64MB of PCI memory. This can be
101             problematic if using video cards and other memory-heavy devices.
102
103	  2) If > 64MB of memory space is required, the IXP4xx can be
104	     configured to use indirect registers to access the whole PCI
105	     memory space. This currently allows for up to 1 GB (0x10000000
106	     to 0x4FFFFFFF) of memory on the bus. The disadvantage of this
107	     is that every PCI access requires three local register accesses
108	     plus a spinlock, but in some cases the performance hit is
109	     acceptable. In addition, you cannot mmap() PCI devices in this
110	     case due to the indirect nature of the PCI window.
111
112	  By default, the direct method is used. Choose this option if you
113	  need to use the indirect method instead. If you don't know
114	  what you need, leave this option unselected.
115
116endmenu
117
118endif
119