xref: /linux/arch/arm/mach-ixp4xx/Kconfig (revision 0fbd7409446a8ee76ee701ec846ede917c6c89fa)
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
41#
42# Certain registers and IRQs are only enabled if supporting IXP465 CPUs
43#
44config CPU_IXP46X
45	bool
46	depends on MACH_IXDP465
47	default y
48
49config CPU_IXP43X
50	bool
51	depends on MACH_KIXRP435
52	default y
53
54comment "IXP4xx Options"
55
56config IXP4XX_PCI_LEGACY
57	bool "IXP4xx legacy PCI driver support"
58	depends on PCI
59	help
60	  Selects legacy PCI driver.
61	  Not recommended for new development.
62
63config IXP4XX_INDIRECT_PCI
64	bool "Use indirect PCI memory access"
65	depends on IXP4XX_PCI_LEGACY
66	help
67          IXP4xx provides two methods of accessing PCI memory space:
68
69          1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB).
70             To access PCI via this space, we simply ioremap() the BAR
71             into the kernel and we can use the standard read[bwl]/write[bwl]
72             macros. This is the preferred method due to speed but it
73             limits the system to just 64MB of PCI memory. This can be
74             problematic if using video cards and other memory-heavy devices.
75
76	  2) If > 64MB of memory space is required, the IXP4xx can be
77	     configured to use indirect registers to access the whole PCI
78	     memory space. This currently allows for up to 1 GB (0x10000000
79	     to 0x4FFFFFFF) of memory on the bus. The disadvantage of this
80	     is that every PCI access requires three local register accesses
81	     plus a spinlock, but in some cases the performance hit is
82	     acceptable. In addition, you cannot mmap() PCI devices in this
83	     case due to the indirect nature of the PCI window.
84
85	  By default, the direct method is used. Choose this option if you
86	  need to use the indirect method instead. If you don't know
87	  what you need, leave this option unselected.
88
89endmenu
90
91endif
92