| menuconfig ARCH_BCM |
| bool "Broadcom SoC Support" if ARCH_MULTI_V6_V7 |
| help |
| This enables support for Broadcom ARM based SoC chips |
| |
| if ARCH_BCM |
| |
| comment "IPROC architected SoCs" |
| |
| config ARCH_BCM_IPROC |
| bool |
| select ARM_GIC |
| select CACHE_L2X0 |
| select HAVE_ARM_SCU if SMP |
| select HAVE_ARM_TWD if SMP |
| select ARM_GLOBAL_TIMER |
| |
| select CLKSRC_MMIO |
| select ARCH_REQUIRE_GPIOLIB |
| select ARM_AMBA |
| select PINCTRL |
| help |
| This enables support for systems based on Broadcom IPROC architected SoCs. |
| The IPROC complex contains one or more ARM CPUs along with common |
| core periperals. Application specific SoCs are created by adding a |
| uArchitecture containing peripherals outside of the IPROC complex. |
| Currently supported SoCs are Cygnus. |
| |
| config ARCH_BCM_CYGNUS |
| bool "Broadcom Cygnus Support" if ARCH_MULTI_V7 |
| select ARCH_BCM_IPROC |
| help |
| Enable support for the Cygnus family, |
| which includes the following variants: |
| BCM11300, BCM11320, BCM11350, BCM11360, |
| BCM58300, BCM58302, BCM58303, BCM58305. |
| |
| config ARCH_BCM_5301X |
| bool "Broadcom BCM470X / BCM5301X ARM SoC" if ARCH_MULTI_V7 |
| select ARCH_BCM_IPROC |
| help |
| Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores. |
| |
| This is a network SoC line mostly used in home routers and |
| wifi access points, it's internal name is Northstar. |
| This inclused the following SoC: BCM53010, BCM53011, BCM53012, |
| BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707, |
| BCM4708 and BCM4709. |
| |
| Do not confuse this with the BCM4760 which is a totally |
| different SoC or with the older BCM47XX and BCM53XX based |
| network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx |
| |
| comment "KONA architected SoCs" |
| |
| config ARCH_BCM_MOBILE |
| bool |
| select ARCH_REQUIRE_GPIOLIB |
| select ARM_ERRATA_754322 |
| select ARM_ERRATA_775420 |
| select ARM_GIC |
| select GPIO_BCM_KONA |
| select TICK_ONESHOT |
| select HAVE_ARM_ARCH_TIMER |
| select PINCTRL |
| select ARCH_BCM_MOBILE_SMP if SMP |
| help |
| This enables support for systems based on Broadcom mobile SoCs. |
| |
| config ARCH_BCM_281XX |
| bool "Broadcom BCM281XX SoC family" if ARCH_MULTI_V7 |
| select ARCH_BCM_MOBILE |
| select HAVE_SMP |
| help |
| Enable support for the BCM281XX family, which includes |
| BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155 |
| variants. |
| |
| config ARCH_BCM_21664 |
| bool "Broadcom BCM21664 SoC family" if ARCH_MULTI_V7 |
| select ARCH_BCM_MOBILE |
| select HAVE_SMP |
| help |
| Enable support for the BCM21664 family, which includes |
| BCM21663 and BCM21664 variants. |
| |
| config ARCH_BCM_MOBILE_L2_CACHE |
| bool "Broadcom mobile SoC level 2 cache support" |
| depends on ARCH_BCM_MOBILE |
| default y |
| select CACHE_L2X0 |
| select ARCH_BCM_MOBILE_SMC |
| |
| config ARCH_BCM_MOBILE_SMC |
| bool |
| depends on ARCH_BCM_MOBILE |
| |
| config ARCH_BCM_MOBILE_SMP |
| bool |
| depends on ARCH_BCM_MOBILE |
| select HAVE_ARM_SCU |
| select ARM_ERRATA_764369 |
| help |
| SMP support for the BCM281XX and BCM21664 SoC families. |
| Provided as an option so SMP support for SoCs of this type |
| can be disabled for an SMP-enabled kernel. |
| |
| comment "Other Architectures" |
| |
| config ARCH_BCM2835 |
| bool "Broadcom BCM2835 family" if ARCH_MULTI_V6 |
| select ARCH_REQUIRE_GPIOLIB |
| select ARM_AMBA |
| select ARM_ERRATA_411920 |
| select ARM_TIMER_SP804 |
| select CLKSRC_OF |
| select PINCTRL |
| select PINCTRL_BCM2835 |
| help |
| This enables support for the Broadcom BCM2835 SoC. This SoC is |
| used in the Raspberry Pi and Roku 2 devices. |
| |
| config ARCH_BCM_63XX |
| bool "Broadcom BCM63xx DSL SoC" if ARCH_MULTI_V7 |
| depends on MMU |
| select ARM_ERRATA_754322 |
| select ARM_ERRATA_764369 if SMP |
| select ARM_GIC |
| select ARM_GLOBAL_TIMER |
| select CACHE_L2X0 |
| select HAVE_ARM_ARCH_TIMER |
| select HAVE_ARM_TWD if SMP |
| select HAVE_ARM_SCU if SMP |
| select HAVE_SMP |
| help |
| This enables support for systems based on Broadcom DSL SoCs. |
| It currently supports the 'BCM63XX' ARM-based family, which includes |
| the BCM63138 variant. |
| |
| config ARCH_BRCMSTB |
| bool "Broadcom BCM7XXX based boards" if ARCH_MULTI_V7 |
| select ARM_GIC |
| select ARM_ERRATA_798181 if SMP |
| select HAVE_ARM_ARCH_TIMER |
| select BRCMSTB_GISB_ARB |
| select BRCMSTB_L2_IRQ |
| select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE |
| select ARCH_WANT_OPTIONAL_GPIOLIB |
| select SOC_BRCMSTB |
| select BRCMSTB |
| select PCI_DOMAINS if PCI |
| select BCM7120_L2_IRQ |
| help |
| Say Y if you intend to run the kernel on a Broadcom ARM-based STB |
| chipset. |
| |
| This enables support for Broadcom ARM-based set-top box chipsets, |
| including the 7445 family of chips. |
| |
| endif |
| |
| choice |
| prompt "Chipset selection" |
| depends on ARCH_BRCMSTB |
| help |
| Select the Broadcom STB chipset you are building for. |
| |
| config BCM3390A0 |
| bool "3390 Ax" |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| |
| config BCM3390B0 |
| bool "3390 Bx" |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| |
| config BCM7250B0 |
| bool "7250 Bx" |
| select BCM7250 |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| select BRCMSTB_XPT_HASH if PM |
| |
| config BCM7364A0 |
| bool "7364 Ax" |
| select BCM7364 |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| select BRCMSTB_XPT_HASH if PM |
| |
| config BCM7366C0 |
| bool "7366 Cx" |
| select BCM7366 |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| select BRCMSTB_XPT_HASH if PM |
| |
| config BCM74371A0 |
| bool "74371 Ax" |
| select BCM74371 |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| |
| config BCM7439B0 |
| bool "7439 Bx" |
| select BCM7439 |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| select BRCMSTB_XPT_HASH if PM |
| |
| config BCM7445D0 |
| bool "7445 Dx" |
| select BCM7445 |
| select BRCM_HAS_BSPI_V4 |
| select BRCM_MSPI_64B_WORDS |
| select BRCMSTB_XPT_HASH if PM |
| |
| config BCM7271A0 |
| bool "7271 Ax" |
| select BCM7271 |
| select BRCM_HAS_BSPI_V4 |
| |
| endchoice |
| |
| ##################################################################### |
| # Hidden options |
| ##################################################################### |
| |
| config BCM7250 |
| bool |
| |
| config BCM7364 |
| bool |
| |
| config BCM7366 |
| bool |
| |
| config BCM74371 |
| bool |
| |
| config BCM7439 |
| bool |
| |
| config BCM7445 |
| bool |
| |
| config BRCM_HAS_BSPI_V4 |
| bool |
| select BRCM_HAS_SPI |
| |
| config BRCM_BSPI_MAJOR_VERS |
| int |
| default "4" if BRCM_HAS_BSPI_V4 |
| default "3" if BRCM_HAS_BSPI_V3 |
| default "2" if BRCM_HAS_BSPI_V2 |
| |
| # For MSPI prior to v1.5 (first version with a revision register) |
| config BRCM_MSPI_LEGACY |
| bool |
| |
| # MSPI can transfer either 64b or 8b per slot |
| config BRCM_MSPI_64B_WORDS |
| bool |
| |