121278aeaSRob Herringmenuconfig ARCH_BCM 2e3246542SMasahiro Yamada bool "Broadcom SoC Support" 3e3246542SMasahiro Yamada depends on ARCH_MULTI_V6_V7 4badb9238SChristian Daudt help 5fd336158SAlexander Shiyan This enables support for Broadcom ARM based SoC chips 6badb9238SChristian Daudt 721278aeaSRob Herringif ARCH_BCM 8badb9238SChristian Daudt 91b475f8dSJonathan Richardsoncomment "IPROC architected SoCs" 101b475f8dSJonathan Richardson 111b475f8dSJonathan Richardsonconfig ARCH_BCM_IPROC 121b475f8dSJonathan Richardson bool 131b475f8dSJonathan Richardson select ARM_GIC 141b475f8dSJonathan Richardson select CACHE_L2X0 151b475f8dSJonathan Richardson select HAVE_ARM_SCU if SMP 161b475f8dSJonathan Richardson select HAVE_ARM_TWD if SMP 171b475f8dSJonathan Richardson select ARM_GLOBAL_TIMER 181e9bc9d6SArnd Bergmann select COMMON_CLK_IPROC 191b475f8dSJonathan Richardson select CLKSRC_MMIO 201b475f8dSJonathan Richardson select ARCH_REQUIRE_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 261b475f8dSJonathan Richardson core periperals. 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 401f3e9a6eSJon Masonconfig ARCH_BCM_NSP 41e3246542SMasahiro Yamada bool "Broadcom Northstar Plus SoC Support" 42e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 431f3e9a6eSJon Mason select ARCH_BCM_IPROC 441f3e9a6eSJon Mason select ARM_ERRATA_754322 451f3e9a6eSJon Mason select ARM_ERRATA_775420 4697890821SKapil Hali select ARM_ERRATA_764369 if SMP 4797890821SKapil Hali select HAVE_SMP 481f3e9a6eSJon Mason help 491f3e9a6eSJon Mason Support for Broadcom Northstar Plus SoC. 501f3e9a6eSJon Mason Broadcom Northstar Plus family of SoCs are used for switching control 511f3e9a6eSJon Mason and management applications as well as residential router/gateway 521f3e9a6eSJon Mason applications. The SoC features dual core Cortex A9 ARM CPUs, 531f3e9a6eSJon Mason integrating several peripheral interfaces including multiple Gigabit 541f3e9a6eSJon Mason Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and 551f3e9a6eSJon Mason NAND flash, SATA and several other IO controllers. 561f3e9a6eSJon Mason 57d318987eSScott Brandenconfig ARCH_BCM_5301X 58e3246542SMasahiro Yamada bool "Broadcom BCM470X / BCM5301X ARM SoC" 59e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 60d318987eSScott Branden select ARCH_BCM_IPROC 61f4ce7effSHauke Mehrtens select ARM_ERRATA_754322 62f4ce7effSHauke Mehrtens select ARM_ERRATA_775420 63f4ce7effSHauke Mehrtens select ARM_ERRATA_764369 if SMP 6499498905SJon Mason select HAVE_SMP 65f4ce7effSHauke Mehrtens 66d318987eSScott Branden help 67d318987eSScott Branden Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores. 68d318987eSScott Branden 69d318987eSScott Branden This is a network SoC line mostly used in home routers and 70d318987eSScott Branden wifi access points, it's internal name is Northstar. 71d318987eSScott Branden This inclused the following SoC: BCM53010, BCM53011, BCM53012, 72d318987eSScott Branden BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707, 73d318987eSScott Branden BCM4708 and BCM4709. 74d318987eSScott Branden 75d318987eSScott Branden Do not confuse this with the BCM4760 which is a totally 76d318987eSScott Branden different SoC or with the older BCM47XX and BCM53XX based 77d318987eSScott Branden network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx 78d318987eSScott Branden 7964e74aa7SScott Brandencomment "KONA architected SoCs" 8064e74aa7SScott Branden 81badb9238SChristian Daudtconfig ARCH_BCM_MOBILE 8264e74aa7SScott Branden bool 838ac49e04SChristian Daudt select ARCH_REQUIRE_GPIOLIB 848ac49e04SChristian Daudt select ARM_ERRATA_754322 85ffc1086aSScott Branden select ARM_ERRATA_775420 868ac49e04SChristian Daudt select ARM_GIC 8729c700d7SMarkus Mayer select GPIO_BCM_KONA 888ac49e04SChristian Daudt select TICK_ONESHOT 89e84dfa26SChristian Daudt select HAVE_ARM_ARCH_TIMER 9054b1aa5aSSherman Yin select PINCTRL 9164e74aa7SScott Branden select ARCH_BCM_MOBILE_SMP if SMP 92*1cad71e3SDaniel Lezcano select BCM_KONA_TIMER 938ac49e04SChristian Daudt help 94badb9238SChristian Daudt This enables support for systems based on Broadcom mobile SoCs. 951892bbcdSAlex Elder 961892bbcdSAlex Elderconfig ARCH_BCM_281XX 97e3246542SMasahiro Yamada bool "Broadcom BCM281XX SoC family" 98e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 9964e74aa7SScott Branden select ARCH_BCM_MOBILE 1009a5a110eSAlex Elder select HAVE_SMP 1011892bbcdSAlex Elder help 1029a5a110eSAlex Elder Enable support for the BCM281XX family, which includes 1031892bbcdSAlex Elder BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155 1041892bbcdSAlex Elder variants. 1051892bbcdSAlex Elder 1061892bbcdSAlex Elderconfig ARCH_BCM_21664 107e3246542SMasahiro Yamada bool "Broadcom BCM21664 SoC family" 108e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 10964e74aa7SScott Branden select ARCH_BCM_MOBILE 1109a5a110eSAlex Elder select HAVE_SMP 1111892bbcdSAlex Elder help 1129a5a110eSAlex Elder Enable support for the BCM21664 family, which includes 1131892bbcdSAlex Elder BCM21663 and BCM21664 variants. 1141892bbcdSAlex Elder 1157b5fe9c9SAlex Elderconfig ARCH_BCM_MOBILE_L2_CACHE 1167b5fe9c9SAlex Elder bool "Broadcom mobile SoC level 2 cache support" 11764e74aa7SScott Branden depends on ARCH_BCM_MOBILE 1187b5fe9c9SAlex Elder default y 1197b5fe9c9SAlex Elder select CACHE_L2X0 1207b5fe9c9SAlex Elder select ARCH_BCM_MOBILE_SMC 1217b5fe9c9SAlex Elder 1227b5fe9c9SAlex Elderconfig ARCH_BCM_MOBILE_SMC 1237b5fe9c9SAlex Elder bool 12464e74aa7SScott Branden depends on ARCH_BCM_MOBILE 1257b5fe9c9SAlex Elder 1269a5a110eSAlex Elderconfig ARCH_BCM_MOBILE_SMP 12764e74aa7SScott Branden bool 12864e74aa7SScott Branden depends on ARCH_BCM_MOBILE 1299a5a110eSAlex Elder select HAVE_ARM_SCU 1309a5a110eSAlex Elder select ARM_ERRATA_764369 1319a5a110eSAlex Elder help 1329a5a110eSAlex Elder SMP support for the BCM281XX and BCM21664 SoC families. 1339a5a110eSAlex Elder Provided as an option so SMP support for SoCs of this type 1349a5a110eSAlex Elder can be disabled for an SMP-enabled kernel. 1359a5a110eSAlex Elder 1361b475f8dSJonathan Richardsoncomment "Other Architectures" 137badb9238SChristian Daudt 138d30fe627SMarkus Mayerconfig ARCH_BCM2835 139e3246542SMasahiro Yamada bool "Broadcom BCM2835 family" 140fc2f669eSArnd Bergmann depends on ARCH_MULTI_V6 || ARCH_MULTI_V7 141d30fe627SMarkus Mayer select ARCH_REQUIRE_GPIOLIB 142d30fe627SMarkus Mayer select ARM_AMBA 1435234c34eSEric Anholt select ARM_ERRATA_411920 if ARCH_MULTI_V6 144d30fe627SMarkus Mayer select ARM_TIMER_SP804 1455234c34eSEric Anholt select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7 146d30fe627SMarkus Mayer select CLKSRC_OF 1472ea879a7SDaniel Lezcano select BCM2835_TIMER 148d30fe627SMarkus Mayer select PINCTRL 149d30fe627SMarkus Mayer select PINCTRL_BCM2835 150d30fe627SMarkus Mayer help 1515234c34eSEric Anholt This enables support for the Broadcom BCM2835 and BCM2836 SoCs. 1525234c34eSEric Anholt This SoC is used in the Raspberry Pi and Roku 2 devices. 153d30fe627SMarkus Mayer 154dc6aec60SFlorian Fainelliconfig ARCH_BCM_63XX 155e3246542SMasahiro Yamada bool "Broadcom BCM63xx DSL SoC" 156e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 157dc6aec60SFlorian Fainelli depends on MMU 158dc6aec60SFlorian Fainelli select ARM_ERRATA_754322 159dc6aec60SFlorian Fainelli select ARM_ERRATA_764369 if SMP 160dc6aec60SFlorian Fainelli select ARM_GIC 161dc6aec60SFlorian Fainelli select ARM_GLOBAL_TIMER 162dc6aec60SFlorian Fainelli select CACHE_L2X0 163dc6aec60SFlorian Fainelli select HAVE_ARM_ARCH_TIMER 164dc6aec60SFlorian Fainelli select HAVE_ARM_TWD if SMP 165dc6aec60SFlorian Fainelli select HAVE_ARM_SCU if SMP 166dc6aec60SFlorian Fainelli select HAVE_SMP 167dc6aec60SFlorian Fainelli help 168dc6aec60SFlorian Fainelli This enables support for systems based on Broadcom DSL SoCs. 169dc6aec60SFlorian Fainelli It currently supports the 'BCM63XX' ARM-based family, which includes 170dc6aec60SFlorian Fainelli the BCM63138 variant. 171dc6aec60SFlorian Fainelli 1724fbe66d9SMarc Carinoconfig ARCH_BRCMSTB 173e3246542SMasahiro Yamada bool "Broadcom BCM7XXX based boards" 174e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 1754fbe66d9SMarc Carino select ARM_GIC 176aeaeba1bSGregory Fong select ARM_ERRATA_798181 if SMP 1774fbe66d9SMarc Carino select HAVE_ARM_ARCH_TIMER 178305787f9SBrian Norris select BRCMSTB_L2_IRQ 179a4fcbb86SKevin Cernekee select BCM7120_L2_IRQ 180b78bda5fSGregory Fong select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE 1818820949dSGregory Fong select ARCH_WANT_OPTIONAL_GPIOLIB 182d52fad26SBrian Norris select SOC_BRCMSTB 183cef4bafcSJustin Chen select SOC_BUS 1844fbe66d9SMarc Carino help 1854fbe66d9SMarc Carino Say Y if you intend to run the kernel on a Broadcom ARM-based STB 1864fbe66d9SMarc Carino chipset. 1874fbe66d9SMarc Carino 1884fbe66d9SMarc Carino This enables support for Broadcom ARM-based set-top box chipsets, 1894fbe66d9SMarc Carino including the 7445 family of chips. 1904fbe66d9SMarc Carino 19121278aeaSRob Herringendif 192