blob: e9184feffc4e5b55d46008be3f3587d2756ea6e3 [file] [log] [blame]
Rob Herring21278ae2014-06-10 09:06:10 -05001menuconfig ARCH_BCM
Alexander Shiyanfd336152014-04-01 12:26:19 +04002 bool "Broadcom SoC Support" if ARCH_MULTI_V6_V7
Christian Daudtbadb92382013-09-23 10:20:33 -07003 help
Alexander Shiyanfd336152014-04-01 12:26:19 +04004 This enables support for Broadcom ARM based SoC chips
Christian Daudtbadb92382013-09-23 10:20:33 -07005
Rob Herring21278ae2014-06-10 09:06:10 -05006if ARCH_BCM
Christian Daudtbadb92382013-09-23 10:20:33 -07007
Jonathan Richardson1b475f82014-08-15 12:52:00 -07008comment "IPROC architected SoCs"
9
10config ARCH_BCM_IPROC
11 bool
12 select ARM_GIC
13 select CACHE_L2X0
14 select HAVE_ARM_SCU if SMP
15 select HAVE_ARM_TWD if SMP
16 select ARM_GLOBAL_TIMER
17
18 select CLKSRC_MMIO
19 select ARCH_REQUIRE_GPIOLIB
20 select ARM_AMBA
21 select PINCTRL
Ray Jui7dc95b402015-05-28 18:09:14 -070022 select MTD_NAND_BRCMNAND
Jonathan Richardson1b475f82014-08-15 12:52:00 -070023 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" if 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
Scott Brandend318987e2014-10-21 18:51:33 -070039config ARCH_BCM_5301X
40 bool "Broadcom BCM470X / BCM5301X ARM SoC" if ARCH_MULTI_V7
41 select ARCH_BCM_IPROC
42 help
43 Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores.
44
45 This is a network SoC line mostly used in home routers and
46 wifi access points, it's internal name is Northstar.
47 This inclused the following SoC: BCM53010, BCM53011, BCM53012,
48 BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707,
49 BCM4708 and BCM4709.
50
51 Do not confuse this with the BCM4760 which is a totally
52 different SoC or with the older BCM47XX and BCM53XX based
53 network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx
54
Scott Branden64e74aa2014-10-22 09:52:13 -070055comment "KONA architected SoCs"
56
Christian Daudtbadb92382013-09-23 10:20:33 -070057config ARCH_BCM_MOBILE
Scott Branden64e74aa2014-10-22 09:52:13 -070058 bool
Christian Daudt8ac49e02012-11-19 09:46:10 -080059 select ARCH_REQUIRE_GPIOLIB
60 select ARM_ERRATA_754322
Scott Brandenffc10862014-04-18 10:13:20 -070061 select ARM_ERRATA_775420
Christian Daudt8ac49e02012-11-19 09:46:10 -080062 select ARM_GIC
Markus Mayer29c700d2013-09-10 11:07:02 -070063 select GPIO_BCM_KONA
Christian Daudt8ac49e02012-11-19 09:46:10 -080064 select TICK_ONESHOT
Christian Daudte84dfa22013-09-24 13:20:52 -070065 select HAVE_ARM_ARCH_TIMER
Sherman Yin54b1aa52013-12-20 18:13:35 -080066 select PINCTRL
Scott Branden64e74aa2014-10-22 09:52:13 -070067 select ARCH_BCM_MOBILE_SMP if SMP
Christian Daudt8ac49e02012-11-19 09:46:10 -080068 help
Christian Daudtbadb92382013-09-23 10:20:33 -070069 This enables support for systems based on Broadcom mobile SoCs.
Alex Elder1892bbc2014-04-15 07:37:19 -050070
Alex Elder1892bbc2014-04-15 07:37:19 -050071config ARCH_BCM_281XX
Arnd Bergmannff34cae2015-01-23 20:59:10 +010072 bool "Broadcom BCM281XX SoC family" if ARCH_MULTI_V7
Scott Branden64e74aa2014-10-22 09:52:13 -070073 select ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -050074 select HAVE_SMP
Alex Elder1892bbc2014-04-15 07:37:19 -050075 help
Alex Elder9a5a1102014-06-30 17:15:37 -050076 Enable support for the BCM281XX family, which includes
Alex Elder1892bbc2014-04-15 07:37:19 -050077 BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155
78 variants.
79
80config ARCH_BCM_21664
Arnd Bergmannff34cae2015-01-23 20:59:10 +010081 bool "Broadcom BCM21664 SoC family" if ARCH_MULTI_V7
Scott Branden64e74aa2014-10-22 09:52:13 -070082 select ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -050083 select HAVE_SMP
Alex Elder1892bbc2014-04-15 07:37:19 -050084 help
Alex Elder9a5a1102014-06-30 17:15:37 -050085 Enable support for the BCM21664 family, which includes
Alex Elder1892bbc2014-04-15 07:37:19 -050086 BCM21663 and BCM21664 variants.
87
Alex Elder7b5fe9c2014-04-21 16:53:07 -050088config ARCH_BCM_MOBILE_L2_CACHE
89 bool "Broadcom mobile SoC level 2 cache support"
Scott Branden64e74aa2014-10-22 09:52:13 -070090 depends on ARCH_BCM_MOBILE
Alex Elder7b5fe9c2014-04-21 16:53:07 -050091 default y
92 select CACHE_L2X0
93 select ARCH_BCM_MOBILE_SMC
94
95config ARCH_BCM_MOBILE_SMC
96 bool
Scott Branden64e74aa2014-10-22 09:52:13 -070097 depends on ARCH_BCM_MOBILE
Alex Elder7b5fe9c2014-04-21 16:53:07 -050098
Alex Elder9a5a1102014-06-30 17:15:37 -050099config ARCH_BCM_MOBILE_SMP
Scott Branden64e74aa2014-10-22 09:52:13 -0700100 bool
101 depends on ARCH_BCM_MOBILE
Alex Elder9a5a1102014-06-30 17:15:37 -0500102 select HAVE_ARM_SCU
103 select ARM_ERRATA_764369
104 help
105 SMP support for the BCM281XX and BCM21664 SoC families.
106 Provided as an option so SMP support for SoCs of this type
107 can be disabled for an SMP-enabled kernel.
108
Jonathan Richardson1b475f82014-08-15 12:52:00 -0700109comment "Other Architectures"
Christian Daudtbadb92382013-09-23 10:20:33 -0700110
Markus Mayerd30fe622014-02-20 16:16:11 -0800111config ARCH_BCM2835
112 bool "Broadcom BCM2835 family" if ARCH_MULTI_V6
113 select ARCH_REQUIRE_GPIOLIB
114 select ARM_AMBA
115 select ARM_ERRATA_411920
116 select ARM_TIMER_SP804
Markus Mayerd30fe622014-02-20 16:16:11 -0800117 select CLKSRC_OF
Markus Mayerd30fe622014-02-20 16:16:11 -0800118 select PINCTRL
119 select PINCTRL_BCM2835
120 help
121 This enables support for the Broadcom BCM2835 SoC. This SoC is
122 used in the Raspberry Pi and Roku 2 devices.
123
Florian Fainellidc6aec62014-02-20 15:53:13 -0800124config ARCH_BCM_63XX
125 bool "Broadcom BCM63xx DSL SoC" if ARCH_MULTI_V7
126 depends on MMU
127 select ARM_ERRATA_754322
128 select ARM_ERRATA_764369 if SMP
129 select ARM_GIC
130 select ARM_GLOBAL_TIMER
131 select CACHE_L2X0
132 select HAVE_ARM_ARCH_TIMER
133 select HAVE_ARM_TWD if SMP
134 select HAVE_ARM_SCU if SMP
135 select HAVE_SMP
136 help
137 This enables support for systems based on Broadcom DSL SoCs.
138 It currently supports the 'BCM63XX' ARM-based family, which includes
139 the BCM63138 variant.
140
Marc Carino4fbe66d2014-01-16 15:00:42 -0800141config ARCH_BRCMSTB
142 bool "Broadcom BCM7XXX based boards" if ARCH_MULTI_V7
Marc Carino4fbe66d2014-01-16 15:00:42 -0800143 select ARM_GIC
Marc Carino4fbe66d2014-01-16 15:00:42 -0800144 select HAVE_ARM_ARCH_TIMER
Brian Norris305787f2014-07-22 15:58:17 -0700145 select BRCMSTB_GISB_ARB
146 select BRCMSTB_L2_IRQ
Kevin Cernekeea4fcbb82014-11-06 22:44:27 -0800147 select BCM7120_L2_IRQ
Gregory Fong88209492015-05-28 19:14:09 -0700148 select ARCH_WANT_OPTIONAL_GPIOLIB
Marc Carino4fbe66d2014-01-16 15:00:42 -0800149 help
150 Say Y if you intend to run the kernel on a Broadcom ARM-based STB
151 chipset.
152
153 This enables support for Broadcom ARM-based set-top box chipsets,
154 including the 7445 family of chips.
155
Rob Herring21278ae2014-06-10 09:06:10 -0500156endif