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