Merge tag 'arm-soc/for-3.19/cygnus-platform-v2' of http://github.com/brcm/linux into next/soc
Pull "Broadcom Cygnus SoC platform support" from Florian Fainelli: This pull request contains the platform code to support the Broadcom Cygnus SoC using the iProc architecture: - add support for the Broadcom Cygnus SoC - consolidate the BCM5301X Kconfig options under the iProc menuconfig entry - remove one level of menu in menuconfig * tag 'arm-soc/for-3.19/cygnus-platform-v2' of http://github.com/brcm/linux: ARM: mach-bcm: ARCH_BCM_MOBILE: remove one level of menu from Kconfig ARM: mach-bcm: Consolidate currently supported IPROC SoCs ARM: cygnus: Initial support for Broadcom Cygnus SoC Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
950e619a98
|
@ -5,8 +5,56 @@ menuconfig ARCH_BCM
|
||||||
|
|
||||||
if ARCH_BCM
|
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
|
config ARCH_BCM_MOBILE
|
||||||
bool "Broadcom Mobile SoC Support" if ARCH_MULTI_V7
|
bool
|
||||||
select ARCH_REQUIRE_GPIOLIB
|
select ARCH_REQUIRE_GPIOLIB
|
||||||
select ARM_ERRATA_754322
|
select ARM_ERRATA_754322
|
||||||
select ARM_ERRATA_775420
|
select ARM_ERRATA_775420
|
||||||
|
@ -15,16 +63,13 @@ config ARCH_BCM_MOBILE
|
||||||
select TICK_ONESHOT
|
select TICK_ONESHOT
|
||||||
select HAVE_ARM_ARCH_TIMER
|
select HAVE_ARM_ARCH_TIMER
|
||||||
select PINCTRL
|
select PINCTRL
|
||||||
|
select ARCH_BCM_MOBILE_SMP if SMP
|
||||||
help
|
help
|
||||||
This enables support for systems based on Broadcom mobile SoCs.
|
This enables support for systems based on Broadcom mobile SoCs.
|
||||||
|
|
||||||
if ARCH_BCM_MOBILE
|
|
||||||
|
|
||||||
menu "Broadcom Mobile SoC Selection"
|
|
||||||
|
|
||||||
config ARCH_BCM_281XX
|
config ARCH_BCM_281XX
|
||||||
bool "Broadcom BCM281XX SoC family"
|
bool "Broadcom BCM281XX SoC family"
|
||||||
default y
|
select ARCH_BCM_MOBILE
|
||||||
select HAVE_SMP
|
select HAVE_SMP
|
||||||
help
|
help
|
||||||
Enable support for the BCM281XX family, which includes
|
Enable support for the BCM281XX family, which includes
|
||||||
|
@ -33,7 +78,7 @@ config ARCH_BCM_281XX
|
||||||
|
|
||||||
config ARCH_BCM_21664
|
config ARCH_BCM_21664
|
||||||
bool "Broadcom BCM21664 SoC family"
|
bool "Broadcom BCM21664 SoC family"
|
||||||
default y
|
select ARCH_BCM_MOBILE
|
||||||
select HAVE_SMP
|
select HAVE_SMP
|
||||||
help
|
help
|
||||||
Enable support for the BCM21664 family, which includes
|
Enable support for the BCM21664 family, which includes
|
||||||
|
@ -41,19 +86,18 @@ config ARCH_BCM_21664
|
||||||
|
|
||||||
config ARCH_BCM_MOBILE_L2_CACHE
|
config ARCH_BCM_MOBILE_L2_CACHE
|
||||||
bool "Broadcom mobile SoC level 2 cache support"
|
bool "Broadcom mobile SoC level 2 cache support"
|
||||||
depends on (ARCH_BCM_281XX || ARCH_BCM_21664)
|
depends on ARCH_BCM_MOBILE
|
||||||
default y
|
default y
|
||||||
select CACHE_L2X0
|
select CACHE_L2X0
|
||||||
select ARCH_BCM_MOBILE_SMC
|
select ARCH_BCM_MOBILE_SMC
|
||||||
|
|
||||||
config ARCH_BCM_MOBILE_SMC
|
config ARCH_BCM_MOBILE_SMC
|
||||||
bool
|
bool
|
||||||
depends on ARCH_BCM_281XX || ARCH_BCM_21664
|
depends on ARCH_BCM_MOBILE
|
||||||
|
|
||||||
config ARCH_BCM_MOBILE_SMP
|
config ARCH_BCM_MOBILE_SMP
|
||||||
bool "Broadcom mobile SoC SMP support"
|
bool
|
||||||
depends on (ARCH_BCM_281XX || ARCH_BCM_21664) && SMP
|
depends on ARCH_BCM_MOBILE
|
||||||
default y
|
|
||||||
select HAVE_ARM_SCU
|
select HAVE_ARM_SCU
|
||||||
select ARM_ERRATA_764369
|
select ARM_ERRATA_764369
|
||||||
help
|
help
|
||||||
|
@ -61,9 +105,7 @@ config ARCH_BCM_MOBILE_SMP
|
||||||
Provided as an option so SMP support for SoCs of this type
|
Provided as an option so SMP support for SoCs of this type
|
||||||
can be disabled for an SMP-enabled kernel.
|
can be disabled for an SMP-enabled kernel.
|
||||||
|
|
||||||
endmenu
|
comment "Other Architectures"
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
||||||
config ARCH_BCM2835
|
config ARCH_BCM2835
|
||||||
bool "Broadcom BCM2835 family" if ARCH_MULTI_V6
|
bool "Broadcom BCM2835 family" if ARCH_MULTI_V6
|
||||||
|
@ -78,27 +120,6 @@ config ARCH_BCM2835
|
||||||
This enables support for the Broadcom BCM2835 SoC. This SoC is
|
This enables support for the Broadcom BCM2835 SoC. This SoC is
|
||||||
used in the Raspberry Pi and Roku 2 devices.
|
used in the Raspberry Pi and Roku 2 devices.
|
||||||
|
|
||||||
config ARCH_BCM_5301X
|
|
||||||
bool "Broadcom BCM470X / BCM5301X ARM SoC" if ARCH_MULTI_V7
|
|
||||||
select ARM_GIC
|
|
||||||
select CACHE_L2X0
|
|
||||||
select HAVE_ARM_SCU if SMP
|
|
||||||
select HAVE_ARM_TWD if SMP
|
|
||||||
select ARM_GLOBAL_TIMER
|
|
||||||
select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
|
|
||||||
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
|
|
||||||
|
|
||||||
config ARCH_BCM_63XX
|
config ARCH_BCM_63XX
|
||||||
bool "Broadcom BCM63xx DSL SoC" if ARCH_MULTI_V7
|
bool "Broadcom BCM63xx DSL SoC" if ARCH_MULTI_V7
|
||||||
depends on MMU
|
depends on MMU
|
||||||
|
|
|
@ -10,6 +10,9 @@
|
||||||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
# Cygnus
|
||||||
|
obj-$(CONFIG_ARCH_BCM_CYGNUS) += bcm_cygnus.o
|
||||||
|
|
||||||
# BCM281XX
|
# BCM281XX
|
||||||
obj-$(CONFIG_ARCH_BCM_281XX) += board_bcm281xx.o
|
obj-$(CONFIG_ARCH_BCM_281XX) += board_bcm281xx.o
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2014 Broadcom Corporation
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation version 2.
|
||||||
|
*
|
||||||
|
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
|
||||||
|
* kind, whether express or implied; without even the implied warranty
|
||||||
|
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <asm/mach/arch.h>
|
||||||
|
|
||||||
|
static const char const *bcm_cygnus_dt_compat[] = {
|
||||||
|
"brcm,cygnus",
|
||||||
|
NULL,
|
||||||
|
};
|
||||||
|
|
||||||
|
DT_MACHINE_START(BCM_CYGNUS_DT, "Broadcom Cygnus SoC")
|
||||||
|
.l2c_aux_val = 0,
|
||||||
|
.l2c_aux_mask = ~0,
|
||||||
|
.dt_compat = bcm_cygnus_dt_compat,
|
||||||
|
MACHINE_END
|
Loading…
Reference in New Issue