| 1 | menuconfig ARCH_BCM |
| 2 | bool "Broadcom SoC Support" if ARCH_MULTI_V6_V7 |
| 3 | help |
| 4 | This enables support for Broadcom ARM based SoC chips |
| 5 | |
| 6 | if ARCH_BCM |
| 7 | |
| 8 | config ARCH_BCM_MOBILE |
| 9 | bool "Broadcom Mobile SoC Support" if ARCH_MULTI_V7 |
| 10 | select ARCH_REQUIRE_GPIOLIB |
| 11 | select ARM_ERRATA_754322 |
| 12 | select ARM_ERRATA_775420 |
| 13 | select ARM_GIC |
| 14 | select GPIO_BCM_KONA |
| 15 | select TICK_ONESHOT |
| 16 | select HAVE_ARM_ARCH_TIMER |
| 17 | select PINCTRL |
| 18 | help |
| 19 | This enables support for systems based on Broadcom mobile SoCs. |
| 20 | |
| 21 | if ARCH_BCM_MOBILE |
| 22 | |
| 23 | menu "Broadcom Mobile SoC Selection" |
| 24 | |
| 25 | config ARCH_BCM_281XX |
| 26 | bool "Broadcom BCM281XX SoC family" |
| 27 | default y |
| 28 | select HAVE_SMP |
| 29 | help |
| 30 | Enable support for the BCM281XX family, which includes |
| 31 | BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155 |
| 32 | variants. |
| 33 | |
| 34 | config ARCH_BCM_21664 |
| 35 | bool "Broadcom BCM21664 SoC family" |
| 36 | default y |
| 37 | select HAVE_SMP |
| 38 | help |
| 39 | Enable support for the BCM21664 family, which includes |
| 40 | BCM21663 and BCM21664 variants. |
| 41 | |
| 42 | config ARCH_BCM_MOBILE_L2_CACHE |
| 43 | bool "Broadcom mobile SoC level 2 cache support" |
| 44 | depends on (ARCH_BCM_281XX || ARCH_BCM_21664) |
| 45 | default y |
| 46 | select CACHE_L2X0 |
| 47 | select ARCH_BCM_MOBILE_SMC |
| 48 | |
| 49 | config ARCH_BCM_MOBILE_SMC |
| 50 | bool |
| 51 | depends on ARCH_BCM_281XX || ARCH_BCM_21664 |
| 52 | |
| 53 | config ARCH_BCM_MOBILE_SMP |
| 54 | bool "Broadcom mobile SoC SMP support" |
| 55 | depends on (ARCH_BCM_281XX || ARCH_BCM_21664) && SMP |
| 56 | default y |
| 57 | select HAVE_ARM_SCU |
| 58 | select ARM_ERRATA_764369 |
| 59 | help |
| 60 | SMP support for the BCM281XX and BCM21664 SoC families. |
| 61 | Provided as an option so SMP support for SoCs of this type |
| 62 | can be disabled for an SMP-enabled kernel. |
| 63 | |
| 64 | endmenu |
| 65 | |
| 66 | endif |
| 67 | |
| 68 | config ARCH_BCM2835 |
| 69 | bool "Broadcom BCM2835 family" if ARCH_MULTI_V6 |
| 70 | select ARCH_REQUIRE_GPIOLIB |
| 71 | select ARM_AMBA |
| 72 | select ARM_ERRATA_411920 |
| 73 | select ARM_TIMER_SP804 |
| 74 | select CLKSRC_OF |
| 75 | select PINCTRL |
| 76 | select PINCTRL_BCM2835 |
| 77 | help |
| 78 | This enables support for the Broadcom BCM2835 SoC. This SoC is |
| 79 | used in the Raspberry Pi and Roku 2 devices. |
| 80 | |
| 81 | config ARCH_BCM_5301X |
| 82 | bool "Broadcom BCM470X / BCM5301X ARM SoC" if ARCH_MULTI_V7 |
| 83 | select ARM_GIC |
| 84 | select CACHE_L2X0 |
| 85 | select HAVE_ARM_SCU if SMP |
| 86 | select HAVE_ARM_TWD if SMP |
| 87 | select ARM_GLOBAL_TIMER |
| 88 | select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK |
| 89 | help |
| 90 | Support for Broadcom BCM470X and BCM5301X SoCs with ARM CPU cores. |
| 91 | |
| 92 | This is a network SoC line mostly used in home routers and |
| 93 | wifi access points, it's internal name is Northstar. |
| 94 | This inclused the following SoC: BCM53010, BCM53011, BCM53012, |
| 95 | BCM53014, BCM53015, BCM53016, BCM53017, BCM53018, BCM4707, |
| 96 | BCM4708 and BCM4709. |
| 97 | |
| 98 | Do not confuse this with the BCM4760 which is a totally |
| 99 | different SoC or with the older BCM47XX and BCM53XX based |
| 100 | network SoC using a MIPS CPU, they are supported by arch/mips/bcm47xx |
| 101 | |
| 102 | config ARCH_BCM_63XX |
| 103 | bool "Broadcom BCM63xx DSL SoC" if ARCH_MULTI_V7 |
| 104 | depends on MMU |
| 105 | select ARM_ERRATA_754322 |
| 106 | select ARM_ERRATA_764369 if SMP |
| 107 | select ARM_GIC |
| 108 | select ARM_GLOBAL_TIMER |
| 109 | select CACHE_L2X0 |
| 110 | select HAVE_ARM_ARCH_TIMER |
| 111 | select HAVE_ARM_TWD if SMP |
| 112 | select HAVE_ARM_SCU if SMP |
| 113 | select HAVE_SMP |
| 114 | help |
| 115 | This enables support for systems based on Broadcom DSL SoCs. |
| 116 | It currently supports the 'BCM63XX' ARM-based family, which includes |
| 117 | the BCM63138 variant. |
| 118 | |
| 119 | config ARCH_BRCMSTB |
| 120 | bool "Broadcom BCM7XXX based boards" if ARCH_MULTI_V7 |
| 121 | depends on MMU |
| 122 | select ARM_GIC |
| 123 | select MIGHT_HAVE_PCI |
| 124 | select HAVE_SMP |
| 125 | select HAVE_ARM_ARCH_TIMER |
| 126 | select BRCMSTB_GISB_ARB |
| 127 | select BRCMSTB_L2_IRQ |
| 128 | help |
| 129 | Say Y if you intend to run the kernel on a Broadcom ARM-based STB |
| 130 | chipset. |
| 131 | |
| 132 | This enables support for Broadcom ARM-based set-top box chipsets, |
| 133 | including the 7445 family of chips. |
| 134 | |
| 135 | endif |