1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 221278aeaSRob Herringmenuconfig ARCH_BCM 3e3246542SMasahiro Yamada bool "Broadcom SoC Support" 4e3246542SMasahiro Yamada depends on ARCH_MULTI_V6_V7 5badb9238SChristian Daudt help 6fd336158SAlexander Shiyan This enables support for Broadcom ARM based SoC chips 7badb9238SChristian Daudt 821278aeaSRob Herringif ARCH_BCM 9badb9238SChristian Daudt 101b475f8dSJonathan Richardsoncomment "IPROC architected SoCs" 111b475f8dSJonathan Richardson 121b475f8dSJonathan Richardsonconfig ARCH_BCM_IPROC 131b475f8dSJonathan Richardson bool 141b475f8dSJonathan Richardson select ARM_GIC 151b475f8dSJonathan Richardson select CACHE_L2X0 161b475f8dSJonathan Richardson select HAVE_ARM_SCU if SMP 171b475f8dSJonathan Richardson select HAVE_ARM_TWD if SMP 181b475f8dSJonathan Richardson select ARM_GLOBAL_TIMER 191b475f8dSJonathan Richardson select CLKSRC_MMIO 205c34a4e8SLinus Walleij select GPIOLIB 211b475f8dSJonathan Richardson select ARM_AMBA 221b475f8dSJonathan Richardson select PINCTRL 231b475f8dSJonathan Richardson help 241b475f8dSJonathan Richardson This enables support for systems based on Broadcom IPROC architected SoCs. 251b475f8dSJonathan Richardson The IPROC complex contains one or more ARM CPUs along with common 2683fc61a5SMasanari Iida core peripherals. Application specific SoCs are created by adding a 271b475f8dSJonathan Richardson uArchitecture containing peripherals outside of the IPROC complex. 281b475f8dSJonathan Richardson Currently supported SoCs are Cygnus. 291b475f8dSJonathan Richardson 301b475f8dSJonathan Richardsonconfig ARCH_BCM_CYGNUS 31e3246542SMasahiro Yamada bool "Broadcom Cygnus Support" 32e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 331b475f8dSJonathan Richardson select ARCH_BCM_IPROC 341b475f8dSJonathan Richardson help 351b475f8dSJonathan Richardson Enable support for the Cygnus family, 361b475f8dSJonathan Richardson which includes the following variants: 371b475f8dSJonathan Richardson BCM11300, BCM11320, BCM11350, BCM11360, 381b475f8dSJonathan Richardson BCM58300, BCM58302, BCM58303, BCM58305. 391b475f8dSJonathan Richardson 402e2bba69SFlorian Fainelliconfig ARCH_BCM_HR2 412e2bba69SFlorian Fainelli bool "Broadcom Hurricane 2 SoC support" 422e2bba69SFlorian Fainelli depends on ARCH_MULTI_V7 432e2bba69SFlorian Fainelli select ARCH_BCM_IPROC 442e2bba69SFlorian Fainelli help 452e2bba69SFlorian Fainelli Enable support for the Hurricane 2 family, 462e2bba69SFlorian Fainelli which includes the following variants: 472e2bba69SFlorian Fainelli BCM53342, BCM53343, BCM53344, BCM53346. 482e2bba69SFlorian Fainelli 491f3e9a6eSJon Masonconfig ARCH_BCM_NSP 50e3246542SMasahiro Yamada bool "Broadcom Northstar Plus SoC Support" 51e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 521f3e9a6eSJon Mason select ARCH_BCM_IPROC 531f3e9a6eSJon Mason select ARM_ERRATA_754322 541f3e9a6eSJon Mason select ARM_ERRATA_775420 5597890821SKapil Hali select ARM_ERRATA_764369 if SMP 560386e9ceSMatthew Hagan select ARM_TIMER_SP804 571f3e9a6eSJon Mason help 581f3e9a6eSJon Mason Support for Broadcom Northstar Plus SoC. 591f3e9a6eSJon Mason Broadcom Northstar Plus family of SoCs are used for switching control 601f3e9a6eSJon Mason and management applications as well as residential router/gateway 611f3e9a6eSJon Mason applications. The SoC features dual core Cortex A9 ARM CPUs, 621f3e9a6eSJon Mason integrating several peripheral interfaces including multiple Gigabit 631f3e9a6eSJon Mason Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and 641f3e9a6eSJon Mason NAND flash, SATA and several other IO controllers. 651f3e9a6eSJon Mason 66d318987eSScott Brandenconfig ARCH_BCM_5301X 67e3246542SMasahiro Yamada bool "Broadcom BCM470X / BCM5301X ARM SoC" 68e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 69d318987eSScott Branden select ARCH_BCM_IPROC 70f4ce7effSHauke Mehrtens select ARM_ERRATA_754322 71f4ce7effSHauke Mehrtens select ARM_ERRATA_775420 72f4ce7effSHauke Mehrtens select ARM_ERRATA_764369 if SMP 73f4ce7effSHauke Mehrtens 74d318987eSScott Branden help 75d318987eSScott Branden Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores. 76d318987eSScott Branden 77d318987eSScott Branden This is a network SoC line mostly used in home routers and 7883fc61a5SMasanari Iida wifi access points, its internal name is Northstar. 7983fc61a5SMasanari Iida This includes the following SoC: BCM53010, BCM53011, BCM53012, 80d318987eSScott Branden BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707, 81d318987eSScott Branden BCM4708 and BCM4709. 82d318987eSScott Branden 83d318987eSScott Branden Do not confuse this with the BCM4760 which is a totally 84d318987eSScott Branden different SoC or with the older BCM47XX and BCM53XX based 85d318987eSScott Branden network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx 86d318987eSScott Branden 8764e74aa7SScott Brandencomment "KONA architected SoCs" 8864e74aa7SScott Branden 89badb9238SChristian Daudtconfig ARCH_BCM_MOBILE 9064e74aa7SScott Branden bool 915c34a4e8SLinus Walleij select GPIOLIB 928ac49e04SChristian Daudt select ARM_ERRATA_754322 93ffc1086aSScott Branden select ARM_ERRATA_775420 948ac49e04SChristian Daudt select ARM_GIC 9529c700d7SMarkus Mayer select GPIO_BCM_KONA 96e84dfa26SChristian Daudt select HAVE_ARM_ARCH_TIMER 9754b1aa5aSSherman Yin select PINCTRL 9864e74aa7SScott Branden select ARCH_BCM_MOBILE_SMP if SMP 991cad71e3SDaniel Lezcano select BCM_KONA_TIMER 1008ac49e04SChristian Daudt help 101badb9238SChristian Daudt This enables support for systems based on Broadcom mobile SoCs. 1021892bbcdSAlex Elder 1031892bbcdSAlex Elderconfig ARCH_BCM_281XX 104e3246542SMasahiro Yamada bool "Broadcom BCM281XX SoC family" 105e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 10664e74aa7SScott Branden select ARCH_BCM_MOBILE 1071892bbcdSAlex Elder help 1089a5a110eSAlex Elder Enable support for the BCM281XX family, which includes 1091892bbcdSAlex Elder BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155 1101892bbcdSAlex Elder variants. 1111892bbcdSAlex Elder 1121892bbcdSAlex Elderconfig ARCH_BCM_21664 113e3246542SMasahiro Yamada bool "Broadcom BCM21664 SoC family" 114e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 11564e74aa7SScott Branden select ARCH_BCM_MOBILE 1161892bbcdSAlex Elder help 1179a5a110eSAlex Elder Enable support for the BCM21664 family, which includes 1181892bbcdSAlex Elder BCM21663 and BCM21664 variants. 1191892bbcdSAlex Elder 1204533d5f7SChris Brandconfig ARCH_BCM_23550 1214533d5f7SChris Brand bool "Broadcom BCM23550 SoC" 1224533d5f7SChris Brand depends on ARCH_MULTI_V7 1234533d5f7SChris Brand select ARCH_BCM_MOBILE 1244533d5f7SChris Brand help 1254533d5f7SChris Brand Enable support for the BCM23550. 1264533d5f7SChris Brand 1277b5fe9c9SAlex Elderconfig ARCH_BCM_MOBILE_L2_CACHE 1287b5fe9c9SAlex Elder bool "Broadcom mobile SoC level 2 cache support" 1294533d5f7SChris Brand depends on ARCH_BCM_281XX || ARCH_BCM_21664 1307b5fe9c9SAlex Elder default y 1317b5fe9c9SAlex Elder select CACHE_L2X0 1327b5fe9c9SAlex Elder select ARCH_BCM_MOBILE_SMC 1337b5fe9c9SAlex Elder 1347b5fe9c9SAlex Elderconfig ARCH_BCM_MOBILE_SMC 1357b5fe9c9SAlex Elder bool 13664e74aa7SScott Branden depends on ARCH_BCM_MOBILE 1377b5fe9c9SAlex Elder 1389a5a110eSAlex Elderconfig ARCH_BCM_MOBILE_SMP 13964e74aa7SScott Branden bool 14064e74aa7SScott Branden depends on ARCH_BCM_MOBILE 1419a5a110eSAlex Elder select HAVE_ARM_SCU 1429a5a110eSAlex Elder select ARM_ERRATA_764369 1439a5a110eSAlex Elder help 1444533d5f7SChris Brand SMP support for the BCM281XX, BCM21664 and BCM23550 SoC families. 1459a5a110eSAlex Elder Provided as an option so SMP support for SoCs of this type 1469a5a110eSAlex Elder can be disabled for an SMP-enabled kernel. 1479a5a110eSAlex Elder 1481b475f8dSJonathan Richardsoncomment "Other Architectures" 149badb9238SChristian Daudt 150d30fe627SMarkus Mayerconfig ARCH_BCM2835 151e3246542SMasahiro Yamada bool "Broadcom BCM2835 family" 152fc2f669eSArnd Bergmann depends on ARCH_MULTI_V6 || ARCH_MULTI_V7 1535c34a4e8SLinus Walleij select GPIOLIB 154d30fe627SMarkus Mayer select ARM_AMBA 1555234c34eSEric Anholt select ARM_ERRATA_411920 if ARCH_MULTI_V6 156781fa0a9SStefan Wahren select ARM_GIC if ARCH_MULTI_V7 157781fa0a9SStefan Wahren select ZONE_DMA if ARCH_MULTI_V7 158d30fe627SMarkus Mayer select ARM_TIMER_SP804 1595234c34eSEric Anholt select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7 1602ea879a7SDaniel Lezcano select BCM2835_TIMER 161d30fe627SMarkus Mayer select PINCTRL 162d30fe627SMarkus Mayer select PINCTRL_BCM2835 1635e6acc3eSEric Anholt select MFD_CORE 164d30fe627SMarkus Mayer help 165781fa0a9SStefan Wahren This enables support for the Broadcom BCM2711 and BCM283x SoCs. 1665234c34eSEric Anholt This SoC is used in the Raspberry Pi and Roku 2 devices. 167d30fe627SMarkus Mayer 1684ebd5047SRafał Miłeckiconfig ARCH_BCM_53573 1694ebd5047SRafał Miłecki bool "Broadcom BCM53573 SoC series support" 1704ebd5047SRafał Miłecki depends on ARCH_MULTI_V7 1714ebd5047SRafał Miłecki select ARCH_BCM_IPROC 1724ebd5047SRafał Miłecki select HAVE_ARM_ARCH_TIMER 1734ebd5047SRafał Miłecki help 1744ebd5047SRafał Miłecki BCM53573 series is set of SoCs using ARM Cortex-A7 CPUs with wireless 1754ebd5047SRafał Miłecki embedded in the chipset. 1764ebd5047SRafał Miłecki This SoC line is mostly used in home routers and is some cheaper 1774ebd5047SRafał Miłecki alternative for Northstar family. 1784ebd5047SRafał Miłecki 1794ebd5047SRafał Miłecki The base chip is BCM53573 and there are some packaging modifications 1804ebd5047SRafał Miłecki like BCM47189 and BCM47452. 1814ebd5047SRafał Miłecki 1824fbe66d9SMarc Carinoconfig ARCH_BRCMSTB 183e3246542SMasahiro Yamada bool "Broadcom BCM7XXX based boards" 184e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 185933b9609SJim Quinlan select ARCH_HAS_RESET_CONTROLLER 186c586f47fSFlorian Fainelli select ARM_AMBA 1874fbe66d9SMarc Carino select ARM_GIC 188*2b28fe75SFlorian Fainelli select ARM_GIC_V3 189aeaeba1bSGregory Fong select ARM_ERRATA_798181 if SMP 1904fbe66d9SMarc Carino select HAVE_ARM_ARCH_TIMER 1913c51b9c7SAl Cooper select ZONE_DMA if ARM_LPAE 192d52fad26SBrian Norris select SOC_BRCMSTB 193cef4bafcSJustin Chen select SOC_BUS 194885895a8SDoug Berger select PINCTRL 1954fbe66d9SMarc Carino help 1964fbe66d9SMarc Carino Say Y if you intend to run the kernel on a Broadcom ARM-based STB 1974fbe66d9SMarc Carino chipset. 1984fbe66d9SMarc Carino 1994fbe66d9SMarc Carino This enables support for Broadcom ARM-based set-top box chipsets, 2004fbe66d9SMarc Carino including the 7445 family of chips. 2014fbe66d9SMarc Carino 2021a03beffSWilliam Zhangmenuconfig ARCH_BCMBCA 2039e0c41d4SRafał Miłecki bool "Broadcom Broadband Carrier Access (BCA) origin SoC" 204b32c613bSWilliam Zhang depends on ARCH_MULTI_V7 205b32c613bSWilliam Zhang select ARM_AMBA 206b32c613bSWilliam Zhang select ARM_GIC 207b32c613bSWilliam Zhang select HAVE_ARM_ARCH_TIMER 208b32c613bSWilliam Zhang help 209b32c613bSWilliam Zhang Say Y if you intend to run the kernel on a Broadcom Broadband ARM-based 210b32c613bSWilliam Zhang BCA chipset. 211b32c613bSWilliam Zhang 212b32c613bSWilliam Zhang This enables support for Broadcom BCA ARM-based broadband chipsets, 213b32c613bSWilliam Zhang including the DSL, PON and Wireless family of chips. 2141a03beffSWilliam Zhang 2151a03beffSWilliam Zhangcomment "BCMBCA sub platforms" 2161a03beffSWilliam Zhang 2171a03beffSWilliam Zhangif ARCH_BCMBCA 2181a03beffSWilliam Zhang 2191a03beffSWilliam Zhangconfig ARCH_BCMBCA_CORTEXA7 2201a03beffSWilliam Zhang bool "Cortex-A7 SoCs" 2211a03beffSWilliam Zhang help 2221a03beffSWilliam Zhang Say Y if you intend to run the kernel on a Broadcom Broadband ARM A7 2231a03beffSWilliam Zhang based chipset. 2241a03beffSWilliam Zhang 2251a03beffSWilliam Zhang This enables support for Broadcom BCA ARM A7 broadband chipsets, 2261a03beffSWilliam Zhang including various DSL, PON and Wireless family of chips. 2271a03beffSWilliam Zhang 2281a03beffSWilliam Zhangconfig ARCH_BCMBCA_CORTEXA9 2291a03beffSWilliam Zhang bool "Cortex-A9 SoCS" 2301a03beffSWilliam Zhang select ARM_ERRATA_754322 2311a03beffSWilliam Zhang select ARM_ERRATA_764369 if SMP 2321a03beffSWilliam Zhang select ARCH_HAS_RESET_CONTROLLER 2331a03beffSWilliam Zhang select ARM_GLOBAL_TIMER 2341a03beffSWilliam Zhang select CACHE_L2X0 2351a03beffSWilliam Zhang select HAVE_ARM_TWD if SMP 2361a03beffSWilliam Zhang select HAVE_ARM_SCU if SMP 2371a03beffSWilliam Zhang help 2381a03beffSWilliam Zhang Say Y if you intend to run the kernel on a Broadcom Broadband ARM A9 2391a03beffSWilliam Zhang based BCA chipset. 2401a03beffSWilliam Zhang 2411a03beffSWilliam Zhang This enables support for Broadcom BCA ARM A9 broadband chipset. Currently 2421a03beffSWilliam Zhang only DSL chip BCM63138. 2431a03beffSWilliam Zhang 2441a03beffSWilliam Zhangconfig ARCH_BCMBCA_BRAHMAB15 2451a03beffSWilliam Zhang bool "Brahma-B15 SoCs" 2461a03beffSWilliam Zhang select ARM_ERRATA_798181 if SMP 2471a03beffSWilliam Zhang help 2481a03beffSWilliam Zhang Say Y if you intend to run the kernel on a Broadcom Broadband ARM B15 2491a03beffSWilliam Zhang based BCA chipset. 2501a03beffSWilliam Zhang 2511a03beffSWilliam Zhang This enables support for Broadcom BCA ARM B15 broadband chipset. Currently 2521a03beffSWilliam Zhang only DSL chip BCM63148. 2531a03beffSWilliam Zhang 2541a03beffSWilliam Zhangendif 2551a03beffSWilliam Zhang 25621278aeaSRob Herringendif 257