mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 19:31:53 +00:00
59f181aa9d
Due to the brcmstb SoC's memory map, we may have holes in the memory if we don't populate the maximum amount of memory supported by e.g: the first memory controller which spans either the first 1GiB or first 2GiB of memory. We need to select ARCH_HAS_HOLES_MEMORYMODEL in order to enable CONFIG_HAVE_ARCH_PFN_VALID on platforms that have CONFIG_SPARSEMEM enabled. Signed-off-by: Danesh Petigara <danesh.petigara@broadcom.com> [florian: Detailed commit message] Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
214 lines
5.8 KiB
Plaintext
214 lines
5.8 KiB
Plaintext
menuconfig ARCH_BCM
|
|
bool "Broadcom SoC Support"
|
|
depends on 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 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"
|
|
depends on 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_NSP
|
|
bool "Broadcom Northstar Plus SoC Support"
|
|
depends on ARCH_MULTI_V7
|
|
select ARCH_BCM_IPROC
|
|
select ARM_ERRATA_754322
|
|
select ARM_ERRATA_775420
|
|
select ARM_ERRATA_764369 if SMP
|
|
select HAVE_SMP
|
|
help
|
|
Support for Broadcom Northstar Plus SoC.
|
|
Broadcom Northstar Plus family of SoCs are used for switching control
|
|
and management applications as well as residential router/gateway
|
|
applications. The SoC features dual core Cortex A9 ARM CPUs,
|
|
integrating several peripheral interfaces including multiple Gigabit
|
|
Ethernet PHYs, DDR3 memory, PCIE Gen-2, USB 2.0 and USB 3.0, serial and
|
|
NAND flash, SATA and several other IO controllers.
|
|
|
|
config ARCH_BCM_5301X
|
|
bool "Broadcom BCM470X / BCM5301X ARM SoC"
|
|
depends on ARCH_MULTI_V7
|
|
select ARCH_BCM_IPROC
|
|
select ARM_ERRATA_754322
|
|
select ARM_ERRATA_775420
|
|
select ARM_ERRATA_764369 if SMP
|
|
select HAVE_SMP
|
|
|
|
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 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
|
|
select BCM_KONA_TIMER
|
|
help
|
|
This enables support for systems based on Broadcom mobile SoCs.
|
|
|
|
config ARCH_BCM_281XX
|
|
bool "Broadcom BCM281XX SoC family"
|
|
depends on 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"
|
|
depends on 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_23550
|
|
bool "Broadcom BCM23550 SoC"
|
|
depends on ARCH_MULTI_V7
|
|
select ARCH_BCM_MOBILE
|
|
select HAVE_SMP
|
|
help
|
|
Enable support for the BCM23550.
|
|
|
|
config ARCH_BCM_MOBILE_L2_CACHE
|
|
bool "Broadcom mobile SoC level 2 cache support"
|
|
depends on ARCH_BCM_281XX || ARCH_BCM_21664
|
|
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, BCM21664 and BCM23550 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"
|
|
depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
|
|
select GPIOLIB
|
|
select ARM_AMBA
|
|
select ARM_ERRATA_411920 if ARCH_MULTI_V6
|
|
select ARM_TIMER_SP804
|
|
select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
|
|
select CLKSRC_OF
|
|
select BCM2835_TIMER
|
|
select PINCTRL
|
|
select PINCTRL_BCM2835
|
|
help
|
|
This enables support for the Broadcom BCM2835 and BCM2836 SoCs.
|
|
This SoC is used in the Raspberry Pi and Roku 2 devices.
|
|
|
|
config ARCH_BCM_53573
|
|
bool "Broadcom BCM53573 SoC series support"
|
|
depends on ARCH_MULTI_V7
|
|
select ARCH_BCM_IPROC
|
|
select HAVE_ARM_ARCH_TIMER
|
|
help
|
|
BCM53573 series is set of SoCs using ARM Cortex-A7 CPUs with wireless
|
|
embedded in the chipset.
|
|
This SoC line is mostly used in home routers and is some cheaper
|
|
alternative for Northstar family.
|
|
|
|
The base chip is BCM53573 and there are some packaging modifications
|
|
like BCM47189 and BCM47452.
|
|
|
|
config ARCH_BCM_63XX
|
|
bool "Broadcom BCM63xx DSL SoC"
|
|
depends on 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"
|
|
depends on ARCH_MULTI_V7
|
|
select ARM_GIC
|
|
select ARM_ERRATA_798181 if SMP
|
|
select HAVE_ARM_ARCH_TIMER
|
|
select BRCMSTB_L2_IRQ
|
|
select BCM7120_L2_IRQ
|
|
select ARCH_HAS_HOLES_MEMORYMODEL
|
|
select ARCH_DMA_ADDR_T_64BIT if ARM_LPAE
|
|
select ZONE_DMA if ARM_LPAE
|
|
select SOC_BRCMSTB
|
|
select SOC_BUS
|
|
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
|