blob: a0e66d8200c5cf8f2ea592abf870a32800213fa2 [file] [log] [blame]
Rob Herring21278ae2014-06-10 09:06:10 -05001menuconfig ARCH_BCM
Masahiro Yamadae3246542015-11-16 12:06:10 +09002 bool "Broadcom SoC Support"
3 depends on ARCH_MULTI_V6_V7
Christian Daudtbadb92382013-09-23 10:20:33 -07004 help
Alexander Shiyanfd336152014-04-01 12:26:19 +04005 This enables support for Broadcom ARM based SoC chips
Christian Daudtbadb92382013-09-23 10:20:33 -07006
Rob Herring21278ae2014-06-10 09:06:10 -05007if ARCH_BCM
Christian Daudtbadb92382013-09-23 10:20:33 -07008
Jonathan Richardson1b475f82014-08-15 12:52:00 -07009comment "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
Jonathan Richardson1b475f82014-08-15 12:52:00 -070018 select CLKSRC_MMIO
Linus Walleij5c34a4e2016-06-02 14:10:16 +020019 select GPIOLIB
Jonathan Richardson1b475f82014-08-15 12:52:00 -070020 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
Masahiro Yamadae3246542015-11-16 12:06:10 +090030 bool "Broadcom Cygnus Support"
31 depends on ARCH_MULTI_V7
Jonathan Richardson1b475f82014-08-15 12:52:00 -070032 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
Jon Mason1f3e9a62015-08-26 18:35:28 -040039config ARCH_BCM_NSP
Masahiro Yamadae3246542015-11-16 12:06:10 +090040 bool "Broadcom Northstar Plus SoC Support"
41 depends on ARCH_MULTI_V7
Jon Mason1f3e9a62015-08-26 18:35:28 -040042 select ARCH_BCM_IPROC
43 select ARM_ERRATA_754322
44 select ARM_ERRATA_775420
Kapil Hali97890822015-12-01 11:24:08 -050045 select ARM_ERRATA_764369 if SMP
46 select HAVE_SMP
Jon Mason1f3e9a62015-08-26 18:35:28 -040047 help
48 Support for Broadcom Northstar Plus SoC.
49 Broadcom Northstar Plus family of SoCs are used for switching control
50 and management applications as well as residential router/gateway
51 applications. The SoC features dual core Cortex A9 ARM CPUs,
52 integrating several peripheral interfaces including multiple Gigabit
53 Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and
54 NAND flash, SATA and several other IO controllers.
55
Scott Brandend318987e2014-10-21 18:51:33 -070056config ARCH_BCM_5301X
Masahiro Yamadae3246542015-11-16 12:06:10 +090057 bool "Broadcom BCM470X / BCM5301X ARM SoC"
58 depends on ARCH_MULTI_V7
Scott Brandend318987e2014-10-21 18:51:33 -070059 select ARCH_BCM_IPROC
Hauke Mehrtensf4ce7ef2015-11-21 15:29:47 +010060 select ARM_ERRATA_754322
61 select ARM_ERRATA_775420
62 select ARM_ERRATA_764369 if SMP
Jon Mason99498902015-12-01 11:24:09 -050063 select HAVE_SMP
Hauke Mehrtensf4ce7ef2015-11-21 15:29:47 +010064
Scott Brandend318987e2014-10-21 18:51:33 -070065 help
66 Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores.
67
68 This is a network SoC line mostly used in home routers and
69 wifi access points, it's internal name is Northstar.
70 This inclused the following SoC: BCM53010, BCM53011, BCM53012,
71 BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707,
72 BCM4708 and BCM4709.
73
74 Do not confuse this with the BCM4760 which is a totally
75 different SoC or with the older BCM47XX and BCM53XX based
76 network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx
77
Scott Branden64e74aa2014-10-22 09:52:13 -070078comment "KONA architected SoCs"
79
Christian Daudtbadb92382013-09-23 10:20:33 -070080config ARCH_BCM_MOBILE
Scott Branden64e74aa2014-10-22 09:52:13 -070081 bool
Linus Walleij5c34a4e2016-06-02 14:10:16 +020082 select GPIOLIB
Christian Daudt8ac49e02012-11-19 09:46:10 -080083 select ARM_ERRATA_754322
Scott Brandenffc10862014-04-18 10:13:20 -070084 select ARM_ERRATA_775420
Christian Daudt8ac49e02012-11-19 09:46:10 -080085 select ARM_GIC
Markus Mayer29c700d2013-09-10 11:07:02 -070086 select GPIO_BCM_KONA
Christian Daudt8ac49e02012-11-19 09:46:10 -080087 select TICK_ONESHOT
Christian Daudte84dfa22013-09-24 13:20:52 -070088 select HAVE_ARM_ARCH_TIMER
Sherman Yin54b1aa52013-12-20 18:13:35 -080089 select PINCTRL
Scott Branden64e74aa2014-10-22 09:52:13 -070090 select ARCH_BCM_MOBILE_SMP if SMP
Daniel Lezcano1cad71e2016-06-02 19:20:36 +020091 select BCM_KONA_TIMER
Christian Daudt8ac49e02012-11-19 09:46:10 -080092 help
Christian Daudtbadb92382013-09-23 10:20:33 -070093 This enables support for systems based on Broadcom mobile SoCs.
Alex Elder1892bbc2014-04-15 07:37:19 -050094
Alex Elder1892bbc2014-04-15 07:37:19 -050095config ARCH_BCM_281XX
Masahiro Yamadae3246542015-11-16 12:06:10 +090096 bool "Broadcom BCM281XX SoC family"
97 depends on ARCH_MULTI_V7
Scott Branden64e74aa2014-10-22 09:52:13 -070098 select ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -050099 select HAVE_SMP
Alex Elder1892bbc2014-04-15 07:37:19 -0500100 help
Alex Elder9a5a1102014-06-30 17:15:37 -0500101 Enable support for the BCM281XX family, which includes
Alex Elder1892bbc2014-04-15 07:37:19 -0500102 BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155
103 variants.
104
105config ARCH_BCM_21664
Masahiro Yamadae3246542015-11-16 12:06:10 +0900106 bool "Broadcom BCM21664 SoC family"
107 depends on ARCH_MULTI_V7
Scott Branden64e74aa2014-10-22 09:52:13 -0700108 select ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -0500109 select HAVE_SMP
Alex Elder1892bbc2014-04-15 07:37:19 -0500110 help
Alex Elder9a5a1102014-06-30 17:15:37 -0500111 Enable support for the BCM21664 family, which includes
Alex Elder1892bbc2014-04-15 07:37:19 -0500112 BCM21663 and BCM21664 variants.
113
Chris Brand4533d5f2016-05-11 14:36:20 -0700114config ARCH_BCM_23550
115 bool "Broadcom BCM23550 SoC"
116 depends on ARCH_MULTI_V7
117 select ARCH_BCM_MOBILE
118 select HAVE_SMP
119 help
120 Enable support for the BCM23550.
121
Alex Elder7b5fe9c2014-04-21 16:53:07 -0500122config ARCH_BCM_MOBILE_L2_CACHE
123 bool "Broadcom mobile SoC level 2 cache support"
Chris Brand4533d5f2016-05-11 14:36:20 -0700124 depends on ARCH_BCM_281XX || ARCH_BCM_21664
Alex Elder7b5fe9c2014-04-21 16:53:07 -0500125 default y
126 select CACHE_L2X0
127 select ARCH_BCM_MOBILE_SMC
128
129config ARCH_BCM_MOBILE_SMC
130 bool
Scott Branden64e74aa2014-10-22 09:52:13 -0700131 depends on ARCH_BCM_MOBILE
Alex Elder7b5fe9c2014-04-21 16:53:07 -0500132
Alex Elder9a5a1102014-06-30 17:15:37 -0500133config ARCH_BCM_MOBILE_SMP
Scott Branden64e74aa2014-10-22 09:52:13 -0700134 bool
135 depends on ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -0500136 select HAVE_ARM_SCU
137 select ARM_ERRATA_764369
138 help
Chris Brand4533d5f2016-05-11 14:36:20 -0700139 SMP support for the BCM281XX, BCM21664 and BCM23550 SoC families.
Alex Elder9a5a1102014-06-30 17:15:37 -0500140 Provided as an option so SMP support for SoCs of this type
141 can be disabled for an SMP-enabled kernel.
142
Jonathan Richardson1b475f82014-08-15 12:52:00 -0700143comment "Other Architectures"
Christian Daudtbadb92382013-09-23 10:20:33 -0700144
Markus Mayerd30fe622014-02-20 16:16:11 -0800145config ARCH_BCM2835
Masahiro Yamadae3246542015-11-16 12:06:10 +0900146 bool "Broadcom BCM2835 family"
Arnd Bergmannfc2f6692015-12-31 17:00:24 +0100147 depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
Linus Walleij5c34a4e2016-06-02 14:10:16 +0200148 select GPIOLIB
Markus Mayerd30fe622014-02-20 16:16:11 -0800149 select ARM_AMBA
Eric Anholt5234c342015-02-24 15:07:55 +0000150 select ARM_ERRATA_411920 if ARCH_MULTI_V6
Markus Mayerd30fe622014-02-20 16:16:11 -0800151 select ARM_TIMER_SP804
Eric Anholt5234c342015-02-24 15:07:55 +0000152 select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
Markus Mayerd30fe622014-02-20 16:16:11 -0800153 select CLKSRC_OF
Daniel Lezcano2ea879a2016-06-02 18:35:38 +0200154 select BCM2835_TIMER
Markus Mayerd30fe622014-02-20 16:16:11 -0800155 select PINCTRL
156 select PINCTRL_BCM2835
157 help
Eric Anholt5234c342015-02-24 15:07:55 +0000158 This enables support for the Broadcom BCM2835 and BCM2836 SoCs.
159 This SoC is used in the Raspberry Pi and Roku 2 devices.
Markus Mayerd30fe622014-02-20 16:16:11 -0800160
Rafał Miłecki4ebd5042016-08-21 19:01:38 +0200161config ARCH_BCM_53573
162 bool "Broadcom BCM53573 SoC series support"
163 depends on ARCH_MULTI_V7
164 select ARCH_BCM_IPROC
165 select HAVE_ARM_ARCH_TIMER
166 help
167 BCM53573 series is set of SoCs using ARM Cortex-A7 CPUs with wireless
168 embedded in the chipset.
169 This SoC line is mostly used in home routers and is some cheaper
170 alternative for Northstar family.
171
172 The base chip is BCM53573 and there are some packaging modifications
173 like BCM47189 and BCM47452.
174
Florian Fainellidc6aec62014-02-20 15:53:13 -0800175config ARCH_BCM_63XX
Masahiro Yamadae3246542015-11-16 12:06:10 +0900176 bool "Broadcom BCM63xx DSL SoC"
177 depends on ARCH_MULTI_V7
Florian Fainellidc6aec62014-02-20 15:53:13 -0800178 depends on MMU
179 select ARM_ERRATA_754322
180 select ARM_ERRATA_764369 if SMP
181 select ARM_GIC
182 select ARM_GLOBAL_TIMER
183 select CACHE_L2X0
184 select HAVE_ARM_ARCH_TIMER
185 select HAVE_ARM_TWD if SMP
186 select HAVE_ARM_SCU if SMP
187 select HAVE_SMP
188 help
189 This enables support for systems based on Broadcom DSL SoCs.
190 It currently supports the 'BCM63XX' ARM-based family, which includes
191 the BCM63138 variant.
192
Marc Carino4fbe66d2014-01-16 15:00:42 -0800193config ARCH_BRCMSTB
Masahiro Yamadae3246542015-11-16 12:06:10 +0900194 bool "Broadcom BCM7XXX based boards"
195 depends on ARCH_MULTI_V7
Marc Carino4fbe66d2014-01-16 15:00:42 -0800196 select ARM_GIC
Gregory Fongaeaeba12015-08-04 18:43:28 -0700197 select ARM_ERRATA_798181 if SMP
Marc Carino4fbe66d2014-01-16 15:00:42 -0800198 select HAVE_ARM_ARCH_TIMER
Brian Norris305787f2014-07-22 15:58:17 -0700199 select BRCMSTB_L2_IRQ
Kevin Cernekeea4fcbb82014-11-06 22:44:27 -0800200 select BCM7120_L2_IRQ
Gregory Fongb78bda52015-08-06 19:22:38 -0700201 select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
Brian Norrisd52fad22015-06-18 17:11:32 -0700202 select SOC_BRCMSTB
Justin Chencef4bafce2016-03-23 11:56:50 -0700203 select SOC_BUS
Marc Carino4fbe66d2014-01-16 15:00:42 -0800204 help
205 Say Y if you intend to run the kernel on a Broadcom ARM-based STB
206 chipset.
207
208 This enables support for Broadcom ARM-based set-top box chipsets,
209 including the 7445 family of chips.
210
Rob Herring21278ae2014-06-10 09:06:10 -0500211endif