xref: /openbmc/linux/arch/arm/mach-bcm/Kconfig (revision 84c43674)
1menuconfig ARCH_BCM
2	bool "Broadcom SoC Support"
3	depends on ARCH_MULTI_V6_V7
4	help
5	  This enables support for Broadcom ARM based SoC chips
6
7if ARCH_BCM
8
9comment "IPROC architected SoCs"
10
11config ARCH_BCM_IPROC
12	bool
13	select ARM_GIC
14	select CACHE_L2X0
15	select HAVE_ARM_SCU if SMP
16	select HAVE_ARM_TWD if SMP
17	select ARM_GLOBAL_TIMER
18	select CLKSRC_MMIO
19	select GPIOLIB
20	select ARM_AMBA
21	select PINCTRL
22	help
23	  This enables support for systems based on Broadcom IPROC architected SoCs.
24	  The IPROC complex contains one or more ARM CPUs along with common
25	  core periperals. Application specific SoCs are created by adding a
26	  uArchitecture containing peripherals outside of the IPROC complex.
27	  Currently supported SoCs are Cygnus.
28
29config ARCH_BCM_CYGNUS
30	bool "Broadcom Cygnus Support"
31	depends on ARCH_MULTI_V7
32	select ARCH_BCM_IPROC
33	help
34	  Enable support for the Cygnus family,
35	  which includes the following variants:
36	  BCM11300, BCM11320, BCM11350, BCM11360,
37	  BCM58300, BCM58302, BCM58303, BCM58305.
38
39config ARCH_BCM_NSP
40	bool "Broadcom Northstar Plus SoC Support"
41	depends on ARCH_MULTI_V7
42	select ARCH_BCM_IPROC
43	select ARM_ERRATA_754322
44	select ARM_ERRATA_775420
45	select ARM_ERRATA_764369 if SMP
46	select HAVE_SMP
47	select THERMAL
48	select THERMAL_OF
49	help
50	  Support for Broadcom Northstar Plus SoC.
51	  Broadcom Northstar Plus family of SoCs are used for switching control
52	  and management applications as well as residential router/gateway
53	  applications. The SoC features dual core Cortex A9 ARM CPUs,
54	  integrating several peripheral interfaces including multiple Gigabit
55	  Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and
56	  NAND flash, SATA and several other IO controllers.
57
58config ARCH_BCM_5301X
59	bool "Broadcom BCM470X / BCM5301X ARM SoC"
60	depends on ARCH_MULTI_V7
61	select ARCH_BCM_IPROC
62	select ARM_ERRATA_754322
63	select ARM_ERRATA_775420
64	select ARM_ERRATA_764369 if SMP
65	select HAVE_SMP
66
67	help
68	  Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores.
69
70	  This is a network SoC line mostly used in home routers and
71	  wifi access points, it's internal name is Northstar.
72	  This inclused the following SoC: BCM53010, BCM53011, BCM53012,
73	  BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707,
74	  BCM4708 and BCM4709.
75
76	  Do not confuse this with the BCM4760 which is a totally
77	  different SoC or with the older BCM47XX and BCM53XX based
78	  network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx
79
80comment "KONA architected SoCs"
81
82config ARCH_BCM_MOBILE
83	bool
84	select GPIOLIB
85	select ARM_ERRATA_754322
86	select ARM_ERRATA_775420
87	select ARM_GIC
88	select GPIO_BCM_KONA
89	select TICK_ONESHOT
90	select HAVE_ARM_ARCH_TIMER
91	select PINCTRL
92	select ARCH_BCM_MOBILE_SMP if SMP
93	select BCM_KONA_TIMER
94	help
95	  This enables support for systems based on Broadcom mobile SoCs.
96
97config ARCH_BCM_281XX
98	bool "Broadcom BCM281XX SoC family"
99	depends on ARCH_MULTI_V7
100	select ARCH_BCM_MOBILE
101	select HAVE_SMP
102	help
103	  Enable support for the BCM281XX family, which includes
104	  BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155
105	  variants.
106
107config ARCH_BCM_21664
108	bool "Broadcom BCM21664 SoC family"
109	depends on ARCH_MULTI_V7
110	select ARCH_BCM_MOBILE
111	select HAVE_SMP
112	help
113	  Enable support for the BCM21664 family, which includes
114	  BCM21663 and BCM21664 variants.
115
116config ARCH_BCM_23550
117	bool "Broadcom BCM23550 SoC"
118	depends on ARCH_MULTI_V7
119	select ARCH_BCM_MOBILE
120	select HAVE_SMP
121	help
122	  Enable support for the BCM23550.
123
124config ARCH_BCM_MOBILE_L2_CACHE
125	bool "Broadcom mobile SoC level 2 cache support"
126	depends on ARCH_BCM_281XX || ARCH_BCM_21664
127	default y
128	select CACHE_L2X0
129	select ARCH_BCM_MOBILE_SMC
130
131config ARCH_BCM_MOBILE_SMC
132	bool
133	depends on ARCH_BCM_MOBILE
134
135config ARCH_BCM_MOBILE_SMP
136	bool
137	depends on ARCH_BCM_MOBILE
138	select HAVE_ARM_SCU
139	select ARM_ERRATA_764369
140	help
141	  SMP support for the BCM281XX, BCM21664 and BCM23550 SoC families.
142	  Provided as an option so SMP support for SoCs of this type
143	  can be disabled for an SMP-enabled kernel.
144
145comment "Other Architectures"
146
147config ARCH_BCM2835
148	bool "Broadcom BCM2835 family"
149	depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
150	select GPIOLIB
151	select ARM_AMBA
152	select ARM_ERRATA_411920 if ARCH_MULTI_V6
153	select ARM_TIMER_SP804
154	select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
155	select TIMER_OF
156	select BCM2835_TIMER
157	select PINCTRL
158	select PINCTRL_BCM2835
159	help
160	  This enables support for the Broadcom BCM2835 and BCM2836 SoCs.
161	  This SoC is used in the Raspberry Pi and Roku 2 devices.
162
163config ARCH_BCM_53573
164	bool "Broadcom BCM53573 SoC series support"
165	depends on ARCH_MULTI_V7
166	select ARCH_BCM_IPROC
167	select HAVE_ARM_ARCH_TIMER
168	help
169	  BCM53573 series is set of SoCs using ARM Cortex-A7 CPUs with wireless
170	  embedded in the chipset.
171	  This SoC line is mostly used in home routers and is some cheaper
172	  alternative for Northstar family.
173
174	  The base chip is BCM53573 and there are some packaging modifications
175	  like BCM47189 and BCM47452.
176
177config ARCH_BCM_63XX
178	bool "Broadcom BCM63xx DSL SoC"
179	depends on ARCH_MULTI_V7
180	depends on MMU
181	select ARM_ERRATA_754322
182	select ARM_ERRATA_764369 if SMP
183	select ARM_GIC
184	select ARM_GLOBAL_TIMER
185	select CACHE_L2X0
186	select HAVE_ARM_ARCH_TIMER
187	select HAVE_ARM_TWD if SMP
188	select HAVE_ARM_SCU if SMP
189	select HAVE_SMP
190	help
191	  This enables support for systems based on Broadcom DSL SoCs.
192	  It currently supports the 'BCM63XX' ARM-based family, which includes
193	  the BCM63138 variant.
194
195config ARCH_BRCMSTB
196	bool "Broadcom BCM7XXX based boards"
197	depends on ARCH_MULTI_V7
198	select ARM_GIC
199	select ARM_ERRATA_798181 if SMP
200	select HAVE_ARM_ARCH_TIMER
201	select BRCMSTB_L2_IRQ
202	select BCM7120_L2_IRQ
203	select ARCH_HAS_HOLES_MEMORYMODEL
204	select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
205	select ZONE_DMA if ARM_LPAE
206	select SOC_BRCMSTB
207	select SOC_BUS
208	help
209	  Say Y if you intend to run the kernel on a Broadcom ARM-based STB
210	  chipset.
211
212	  This enables support for Broadcom ARM-based set-top box chipsets,
213	  including the 7445 family of chips.
214
215endif
216