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