18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 28c2ecf20Sopenharmony_cimenuconfig ARCH_BCM 38c2ecf20Sopenharmony_ci bool "Broadcom SoC Support" 48c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V6_V7 58c2ecf20Sopenharmony_ci help 68c2ecf20Sopenharmony_ci This enables support for Broadcom ARM based SoC chips 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ciif ARCH_BCM 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_cicomment "IPROC architected SoCs" 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ciconfig ARCH_BCM_IPROC 138c2ecf20Sopenharmony_ci bool 148c2ecf20Sopenharmony_ci select ARM_GIC 158c2ecf20Sopenharmony_ci select CACHE_L2X0 168c2ecf20Sopenharmony_ci select HAVE_ARM_SCU if SMP 178c2ecf20Sopenharmony_ci select HAVE_ARM_TWD if SMP 188c2ecf20Sopenharmony_ci select ARM_GLOBAL_TIMER 198c2ecf20Sopenharmony_ci select CLKSRC_MMIO 208c2ecf20Sopenharmony_ci select GPIOLIB 218c2ecf20Sopenharmony_ci select ARM_AMBA 228c2ecf20Sopenharmony_ci select PINCTRL 238c2ecf20Sopenharmony_ci help 248c2ecf20Sopenharmony_ci This enables support for systems based on Broadcom IPROC architected SoCs. 258c2ecf20Sopenharmony_ci The IPROC complex contains one or more ARM CPUs along with common 268c2ecf20Sopenharmony_ci core peripherals. Application specific SoCs are created by adding a 278c2ecf20Sopenharmony_ci uArchitecture containing peripherals outside of the IPROC complex. 288c2ecf20Sopenharmony_ci Currently supported SoCs are Cygnus. 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciconfig ARCH_BCM_CYGNUS 318c2ecf20Sopenharmony_ci bool "Broadcom Cygnus Support" 328c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 338c2ecf20Sopenharmony_ci select ARCH_BCM_IPROC 348c2ecf20Sopenharmony_ci help 358c2ecf20Sopenharmony_ci Enable support for the Cygnus family, 368c2ecf20Sopenharmony_ci which includes the following variants: 378c2ecf20Sopenharmony_ci BCM11300, BCM11320, BCM11350, BCM11360, 388c2ecf20Sopenharmony_ci BCM58300, BCM58302, BCM58303, BCM58305. 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciconfig ARCH_BCM_HR2 418c2ecf20Sopenharmony_ci bool "Broadcom Hurricane 2 SoC support" 428c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 438c2ecf20Sopenharmony_ci select ARCH_BCM_IPROC 448c2ecf20Sopenharmony_ci help 458c2ecf20Sopenharmony_ci Enable support for the Hurricane 2 family, 468c2ecf20Sopenharmony_ci which includes the following variants: 478c2ecf20Sopenharmony_ci BCM53342, BCM53343, BCM53344, BCM53346. 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ciconfig ARCH_BCM_NSP 508c2ecf20Sopenharmony_ci bool "Broadcom Northstar Plus SoC Support" 518c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 528c2ecf20Sopenharmony_ci select ARCH_BCM_IPROC 538c2ecf20Sopenharmony_ci select ARM_ERRATA_754322 548c2ecf20Sopenharmony_ci select ARM_ERRATA_775420 558c2ecf20Sopenharmony_ci select ARM_ERRATA_764369 if SMP 568c2ecf20Sopenharmony_ci select ARM_TIMER_SP804 578c2ecf20Sopenharmony_ci select THERMAL 588c2ecf20Sopenharmony_ci select THERMAL_OF 598c2ecf20Sopenharmony_ci help 608c2ecf20Sopenharmony_ci Support for Broadcom Northstar Plus SoC. 618c2ecf20Sopenharmony_ci Broadcom Northstar Plus family of SoCs are used for switching control 628c2ecf20Sopenharmony_ci and management applications as well as residential router/gateway 638c2ecf20Sopenharmony_ci applications. The SoC features dual core Cortex A9 ARM CPUs, 648c2ecf20Sopenharmony_ci integrating several peripheral interfaces including multiple Gigabit 658c2ecf20Sopenharmony_ci Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and 668c2ecf20Sopenharmony_ci NAND flash, SATA and several other IO controllers. 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ciconfig ARCH_BCM_5301X 698c2ecf20Sopenharmony_ci bool "Broadcom BCM470X / BCM5301X ARM SoC" 708c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 718c2ecf20Sopenharmony_ci select ARCH_BCM_IPROC 728c2ecf20Sopenharmony_ci select ARM_ERRATA_754322 738c2ecf20Sopenharmony_ci select ARM_ERRATA_775420 748c2ecf20Sopenharmony_ci select ARM_ERRATA_764369 if SMP 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ci help 778c2ecf20Sopenharmony_ci Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores. 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci This is a network SoC line mostly used in home routers and 808c2ecf20Sopenharmony_ci wifi access points, its internal name is Northstar. 818c2ecf20Sopenharmony_ci This includes the following SoC: BCM53010, BCM53011, BCM53012, 828c2ecf20Sopenharmony_ci BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707, 838c2ecf20Sopenharmony_ci BCM4708 and BCM4709. 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ci Do not confuse this with the BCM4760 which is a totally 868c2ecf20Sopenharmony_ci different SoC or with the older BCM47XX and BCM53XX based 878c2ecf20Sopenharmony_ci network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_cicomment "KONA architected SoCs" 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ciconfig ARCH_BCM_MOBILE 928c2ecf20Sopenharmony_ci bool 938c2ecf20Sopenharmony_ci select GPIOLIB 948c2ecf20Sopenharmony_ci select ARM_ERRATA_754322 958c2ecf20Sopenharmony_ci select ARM_ERRATA_775420 968c2ecf20Sopenharmony_ci select ARM_GIC 978c2ecf20Sopenharmony_ci select GPIO_BCM_KONA 988c2ecf20Sopenharmony_ci select TICK_ONESHOT 998c2ecf20Sopenharmony_ci select HAVE_ARM_ARCH_TIMER 1008c2ecf20Sopenharmony_ci select PINCTRL 1018c2ecf20Sopenharmony_ci select ARCH_BCM_MOBILE_SMP if SMP 1028c2ecf20Sopenharmony_ci select BCM_KONA_TIMER 1038c2ecf20Sopenharmony_ci help 1048c2ecf20Sopenharmony_ci This enables support for systems based on Broadcom mobile SoCs. 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ciconfig ARCH_BCM_281XX 1078c2ecf20Sopenharmony_ci bool "Broadcom BCM281XX SoC family" 1088c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 1098c2ecf20Sopenharmony_ci select ARCH_BCM_MOBILE 1108c2ecf20Sopenharmony_ci help 1118c2ecf20Sopenharmony_ci Enable support for the BCM281XX family, which includes 1128c2ecf20Sopenharmony_ci BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155 1138c2ecf20Sopenharmony_ci variants. 1148c2ecf20Sopenharmony_ci 1158c2ecf20Sopenharmony_ciconfig ARCH_BCM_21664 1168c2ecf20Sopenharmony_ci bool "Broadcom BCM21664 SoC family" 1178c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 1188c2ecf20Sopenharmony_ci select ARCH_BCM_MOBILE 1198c2ecf20Sopenharmony_ci help 1208c2ecf20Sopenharmony_ci Enable support for the BCM21664 family, which includes 1218c2ecf20Sopenharmony_ci BCM21663 and BCM21664 variants. 1228c2ecf20Sopenharmony_ci 1238c2ecf20Sopenharmony_ciconfig ARCH_BCM_23550 1248c2ecf20Sopenharmony_ci bool "Broadcom BCM23550 SoC" 1258c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 1268c2ecf20Sopenharmony_ci select ARCH_BCM_MOBILE 1278c2ecf20Sopenharmony_ci help 1288c2ecf20Sopenharmony_ci Enable support for the BCM23550. 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ciconfig ARCH_BCM_MOBILE_L2_CACHE 1318c2ecf20Sopenharmony_ci bool "Broadcom mobile SoC level 2 cache support" 1328c2ecf20Sopenharmony_ci depends on ARCH_BCM_281XX || ARCH_BCM_21664 1338c2ecf20Sopenharmony_ci default y 1348c2ecf20Sopenharmony_ci select CACHE_L2X0 1358c2ecf20Sopenharmony_ci select ARCH_BCM_MOBILE_SMC 1368c2ecf20Sopenharmony_ci 1378c2ecf20Sopenharmony_ciconfig ARCH_BCM_MOBILE_SMC 1388c2ecf20Sopenharmony_ci bool 1398c2ecf20Sopenharmony_ci depends on ARCH_BCM_MOBILE 1408c2ecf20Sopenharmony_ci 1418c2ecf20Sopenharmony_ciconfig ARCH_BCM_MOBILE_SMP 1428c2ecf20Sopenharmony_ci bool 1438c2ecf20Sopenharmony_ci depends on ARCH_BCM_MOBILE 1448c2ecf20Sopenharmony_ci select HAVE_ARM_SCU 1458c2ecf20Sopenharmony_ci select ARM_ERRATA_764369 1468c2ecf20Sopenharmony_ci help 1478c2ecf20Sopenharmony_ci SMP support for the BCM281XX, BCM21664 and BCM23550 SoC families. 1488c2ecf20Sopenharmony_ci Provided as an option so SMP support for SoCs of this type 1498c2ecf20Sopenharmony_ci can be disabled for an SMP-enabled kernel. 1508c2ecf20Sopenharmony_ci 1518c2ecf20Sopenharmony_cicomment "Other Architectures" 1528c2ecf20Sopenharmony_ci 1538c2ecf20Sopenharmony_ciconfig ARCH_BCM2835 1548c2ecf20Sopenharmony_ci bool "Broadcom BCM2835 family" 1558c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V6 || ARCH_MULTI_V7 1568c2ecf20Sopenharmony_ci select GPIOLIB 1578c2ecf20Sopenharmony_ci select ARM_AMBA 1588c2ecf20Sopenharmony_ci select ARM_ERRATA_411920 if ARCH_MULTI_V6 1598c2ecf20Sopenharmony_ci select ARM_GIC if ARCH_MULTI_V7 1608c2ecf20Sopenharmony_ci select ZONE_DMA if ARCH_MULTI_V7 1618c2ecf20Sopenharmony_ci select ARM_TIMER_SP804 1628c2ecf20Sopenharmony_ci select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7 1638c2ecf20Sopenharmony_ci select BCM2835_TIMER 1648c2ecf20Sopenharmony_ci select PINCTRL 1658c2ecf20Sopenharmony_ci select PINCTRL_BCM2835 1668c2ecf20Sopenharmony_ci select MFD_CORE 1678c2ecf20Sopenharmony_ci help 1688c2ecf20Sopenharmony_ci This enables support for the Broadcom BCM2711 and BCM283x SoCs. 1698c2ecf20Sopenharmony_ci This SoC is used in the Raspberry Pi and Roku 2 devices. 1708c2ecf20Sopenharmony_ci 1718c2ecf20Sopenharmony_ciconfig ARCH_BCM_53573 1728c2ecf20Sopenharmony_ci bool "Broadcom BCM53573 SoC series support" 1738c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 1748c2ecf20Sopenharmony_ci select ARCH_BCM_IPROC 1758c2ecf20Sopenharmony_ci select HAVE_ARM_ARCH_TIMER 1768c2ecf20Sopenharmony_ci help 1778c2ecf20Sopenharmony_ci BCM53573 series is set of SoCs using ARM Cortex-A7 CPUs with wireless 1788c2ecf20Sopenharmony_ci embedded in the chipset. 1798c2ecf20Sopenharmony_ci This SoC line is mostly used in home routers and is some cheaper 1808c2ecf20Sopenharmony_ci alternative for Northstar family. 1818c2ecf20Sopenharmony_ci 1828c2ecf20Sopenharmony_ci The base chip is BCM53573 and there are some packaging modifications 1838c2ecf20Sopenharmony_ci like BCM47189 and BCM47452. 1848c2ecf20Sopenharmony_ci 1858c2ecf20Sopenharmony_ciconfig ARCH_BCM_63XX 1868c2ecf20Sopenharmony_ci bool "Broadcom BCM63xx DSL SoC" 1878c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 1888c2ecf20Sopenharmony_ci depends on MMU 1898c2ecf20Sopenharmony_ci select ARCH_HAS_RESET_CONTROLLER 1908c2ecf20Sopenharmony_ci select ARM_ERRATA_754322 1918c2ecf20Sopenharmony_ci select ARM_ERRATA_764369 if SMP 1928c2ecf20Sopenharmony_ci select ARM_GIC 1938c2ecf20Sopenharmony_ci select ARM_GLOBAL_TIMER 1948c2ecf20Sopenharmony_ci select CACHE_L2X0 1958c2ecf20Sopenharmony_ci select HAVE_ARM_ARCH_TIMER 1968c2ecf20Sopenharmony_ci select HAVE_ARM_TWD if SMP 1978c2ecf20Sopenharmony_ci select HAVE_ARM_SCU if SMP 1988c2ecf20Sopenharmony_ci help 1998c2ecf20Sopenharmony_ci This enables support for systems based on Broadcom DSL SoCs. 2008c2ecf20Sopenharmony_ci It currently supports the 'BCM63XX' ARM-based family, which includes 2018c2ecf20Sopenharmony_ci the BCM63138 variant. 2028c2ecf20Sopenharmony_ci 2038c2ecf20Sopenharmony_ciconfig ARCH_BRCMSTB 2048c2ecf20Sopenharmony_ci bool "Broadcom BCM7XXX based boards" 2058c2ecf20Sopenharmony_ci depends on ARCH_MULTI_V7 2068c2ecf20Sopenharmony_ci select ARCH_HAS_RESET_CONTROLLER 2078c2ecf20Sopenharmony_ci select ARM_AMBA 2088c2ecf20Sopenharmony_ci select ARM_GIC 2098c2ecf20Sopenharmony_ci select ARM_ERRATA_798181 if SMP 2108c2ecf20Sopenharmony_ci select HAVE_ARM_ARCH_TIMER 2118c2ecf20Sopenharmony_ci select BCM7038_L1_IRQ 2128c2ecf20Sopenharmony_ci select BRCMSTB_L2_IRQ 2138c2ecf20Sopenharmony_ci select BCM7120_L2_IRQ 2148c2ecf20Sopenharmony_ci select ZONE_DMA if ARM_LPAE 2158c2ecf20Sopenharmony_ci select SOC_BRCMSTB 2168c2ecf20Sopenharmony_ci select SOC_BUS 2178c2ecf20Sopenharmony_ci select PINCTRL 2188c2ecf20Sopenharmony_ci help 2198c2ecf20Sopenharmony_ci Say Y if you intend to run the kernel on a Broadcom ARM-based STB 2208c2ecf20Sopenharmony_ci chipset. 2218c2ecf20Sopenharmony_ci 2228c2ecf20Sopenharmony_ci This enables support for Broadcom ARM-based set-top box chipsets, 2238c2ecf20Sopenharmony_ci including the 7445 family of chips. 2248c2ecf20Sopenharmony_ci 2258c2ecf20Sopenharmony_ciendif 226