blob: 7ef121472cdd4761d059ae9f3eaf26b04ac141a2 [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
Arnd Bergmann1e9bc9d2015-10-15 15:48:24 -040018 select COMMON_CLK_IPROC
Jonathan Richardson1b475f82014-08-15 12:52:00 -070019 select CLKSRC_MMIO
20 select ARCH_REQUIRE_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
Masahiro Yamadae3246542015-11-16 12:06:10 +090031 bool "Broadcom Cygnus Support"
32 depends on ARCH_MULTI_V7
Jonathan Richardson1b475f82014-08-15 12:52:00 -070033 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
Jon Mason1f3e9a62015-08-26 18:35:28 -040040config ARCH_BCM_NSP
Masahiro Yamadae3246542015-11-16 12:06:10 +090041 bool "Broadcom Northstar Plus SoC Support"
42 depends on ARCH_MULTI_V7
Jon Mason1f3e9a62015-08-26 18:35:28 -040043 select ARCH_BCM_IPROC
44 select ARM_ERRATA_754322
45 select ARM_ERRATA_775420
Kapil Hali97890822015-12-01 11:24:08 -050046 select ARM_ERRATA_764369 if SMP
47 select HAVE_SMP
Jon Mason1f3e9a62015-08-26 18:35:28 -040048 help
49 Support for Broadcom Northstar Plus SoC.
50 Broadcom Northstar Plus family of SoCs are used for switching control
51 and management applications as well as residential router/gateway
52 applications. The SoC features dual core Cortex A9 ARM CPUs,
53 integrating several peripheral interfaces including multiple Gigabit
54 Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and
55 NAND flash, SATA and several other IO controllers.
56
Scott Brandend318987e2014-10-21 18:51:33 -070057config ARCH_BCM_5301X
Masahiro Yamadae3246542015-11-16 12:06:10 +090058 bool "Broadcom BCM470X / BCM5301X ARM SoC"
59 depends on ARCH_MULTI_V7
Scott Brandend318987e2014-10-21 18:51:33 -070060 select ARCH_BCM_IPROC
Hauke Mehrtensf4ce7ef2015-11-21 15:29:47 +010061 select ARM_ERRATA_754322
62 select ARM_ERRATA_775420
63 select ARM_ERRATA_764369 if SMP
Jon Mason99498902015-12-01 11:24:09 -050064 select HAVE_SMP
Hauke Mehrtensf4ce7ef2015-11-21 15:29:47 +010065
Scott Brandend318987e2014-10-21 18:51:33 -070066 help
67 Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores.
68
69 This is a network SoC line mostly used in home routers and
70 wifi access points, it's internal name is Northstar.
71 This inclused the following SoC: BCM53010, BCM53011, BCM53012,
72 BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707,
73 BCM4708 and BCM4709.
74
75 Do not confuse this with the BCM4760 which is a totally
76 different SoC or with the older BCM47XX and BCM53XX based
77 network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx
78
Scott Branden64e74aa2014-10-22 09:52:13 -070079comment "KONA architected SoCs"
80
Christian Daudtbadb92382013-09-23 10:20:33 -070081config ARCH_BCM_MOBILE
Scott Branden64e74aa2014-10-22 09:52:13 -070082 bool
Christian Daudt8ac49e02012-11-19 09:46:10 -080083 select ARCH_REQUIRE_GPIOLIB
84 select ARM_ERRATA_754322
Scott Brandenffc10862014-04-18 10:13:20 -070085 select ARM_ERRATA_775420
Christian Daudt8ac49e02012-11-19 09:46:10 -080086 select ARM_GIC
Markus Mayer29c700d2013-09-10 11:07:02 -070087 select GPIO_BCM_KONA
Christian Daudt8ac49e02012-11-19 09:46:10 -080088 select TICK_ONESHOT
Christian Daudte84dfa22013-09-24 13:20:52 -070089 select HAVE_ARM_ARCH_TIMER
Sherman Yin54b1aa52013-12-20 18:13:35 -080090 select PINCTRL
Scott Branden64e74aa2014-10-22 09:52:13 -070091 select ARCH_BCM_MOBILE_SMP if SMP
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
Alex Elder7b5fe9c2014-04-21 16:53:07 -0500114config ARCH_BCM_MOBILE_L2_CACHE
115 bool "Broadcom mobile SoC level 2 cache support"
Scott Branden64e74aa2014-10-22 09:52:13 -0700116 depends on ARCH_BCM_MOBILE
Alex Elder7b5fe9c2014-04-21 16:53:07 -0500117 default y
118 select CACHE_L2X0
119 select ARCH_BCM_MOBILE_SMC
120
121config ARCH_BCM_MOBILE_SMC
122 bool
Scott Branden64e74aa2014-10-22 09:52:13 -0700123 depends on ARCH_BCM_MOBILE
Alex Elder7b5fe9c2014-04-21 16:53:07 -0500124
Alex Elder9a5a1102014-06-30 17:15:37 -0500125config ARCH_BCM_MOBILE_SMP
Scott Branden64e74aa2014-10-22 09:52:13 -0700126 bool
127 depends on ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -0500128 select HAVE_ARM_SCU
129 select ARM_ERRATA_764369
130 help
131 SMP support for the BCM281XX and BCM21664 SoC families.
132 Provided as an option so SMP support for SoCs of this type
133 can be disabled for an SMP-enabled kernel.
134
Jonathan Richardson1b475f82014-08-15 12:52:00 -0700135comment "Other Architectures"
Christian Daudtbadb92382013-09-23 10:20:33 -0700136
Markus Mayerd30fe622014-02-20 16:16:11 -0800137config ARCH_BCM2835
Masahiro Yamadae3246542015-11-16 12:06:10 +0900138 bool "Broadcom BCM2835 family"
Arnd Bergmannfc2f6692015-12-31 17:00:24 +0100139 depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
Markus Mayerd30fe622014-02-20 16:16:11 -0800140 select ARCH_REQUIRE_GPIOLIB
141 select ARM_AMBA
Eric Anholt5234c342015-02-24 15:07:55 +0000142 select ARM_ERRATA_411920 if ARCH_MULTI_V6
Markus Mayerd30fe622014-02-20 16:16:11 -0800143 select ARM_TIMER_SP804
Eric Anholt5234c342015-02-24 15:07:55 +0000144 select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
Markus Mayerd30fe622014-02-20 16:16:11 -0800145 select CLKSRC_OF
Markus Mayerd30fe622014-02-20 16:16:11 -0800146 select PINCTRL
147 select PINCTRL_BCM2835
148 help
Eric Anholt5234c342015-02-24 15:07:55 +0000149 This enables support for the Broadcom BCM2835 and BCM2836 SoCs.
150 This SoC is used in the Raspberry Pi and Roku 2 devices.
Markus Mayerd30fe622014-02-20 16:16:11 -0800151
Florian Fainellidc6aec62014-02-20 15:53:13 -0800152config ARCH_BCM_63XX
Masahiro Yamadae3246542015-11-16 12:06:10 +0900153 bool "Broadcom BCM63xx DSL SoC"
154 depends on ARCH_MULTI_V7
Florian Fainellidc6aec62014-02-20 15:53:13 -0800155 depends on MMU
156 select ARM_ERRATA_754322
157 select ARM_ERRATA_764369 if SMP
158 select ARM_GIC
159 select ARM_GLOBAL_TIMER
160 select CACHE_L2X0
161 select HAVE_ARM_ARCH_TIMER
162 select HAVE_ARM_TWD if SMP
163 select HAVE_ARM_SCU if SMP
164 select HAVE_SMP
165 help
166 This enables support for systems based on Broadcom DSL SoCs.
167 It currently supports the 'BCM63XX' ARM-based family, which includes
168 the BCM63138 variant.
169
Marc Carino4fbe66d2014-01-16 15:00:42 -0800170config ARCH_BRCMSTB
Masahiro Yamadae3246542015-11-16 12:06:10 +0900171 bool "Broadcom BCM7XXX based boards"
172 depends on ARCH_MULTI_V7
Marc Carino4fbe66d2014-01-16 15:00:42 -0800173 select ARM_GIC
Gregory Fongaeaeba12015-08-04 18:43:28 -0700174 select ARM_ERRATA_798181 if SMP
Marc Carino4fbe66d2014-01-16 15:00:42 -0800175 select HAVE_ARM_ARCH_TIMER
Brian Norris305787f2014-07-22 15:58:17 -0700176 select BRCMSTB_GISB_ARB
177 select BRCMSTB_L2_IRQ
Kevin Cernekeea4fcbb82014-11-06 22:44:27 -0800178 select BCM7120_L2_IRQ
Gregory Fongb78bda52015-08-06 19:22:38 -0700179 select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
Gregory Fong88209492015-05-28 19:14:09 -0700180 select ARCH_WANT_OPTIONAL_GPIOLIB
Brian Norrisd52fad22015-06-18 17:11:32 -0700181 select SOC_BRCMSTB
Marc Carino4fbe66d2014-01-16 15:00:42 -0800182 help
183 Say Y if you intend to run the kernel on a Broadcom ARM-based STB
184 chipset.
185
186 This enables support for Broadcom ARM-based set-top box chipsets,
187 including the 7445 family of chips.
188
Rob Herring21278ae2014-06-10 09:06:10 -0500189endif