From 29c700d7585bbf732121816baf852d467c8b80b5 Mon Sep 17 00:00:00 2001 From: Markus Mayer Date: Tue, 10 Sep 2013 11:07:02 -0700 Subject: [PATCH 1/5] ARM: bcm281xx: Enable GPIO driver Turn on the bcm281xx GPIO driver in the kernel configuration. Signed-off-by: Markus Mayer Reviewed-by: Christian Daudt --- arch/arm/mach-bcm/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig index 69d67f714a2f..7f6fca801669 100644 --- a/arch/arm/mach-bcm/Kconfig +++ b/arch/arm/mach-bcm/Kconfig @@ -9,7 +9,7 @@ config ARCH_BCM select CLKSRC_OF select GENERIC_CLOCKEVENTS select GENERIC_TIME - select GPIO_BCM + select GPIO_BCM_KONA select SPARSE_IRQ select TICK_ONESHOT select CACHE_L2X0 From 616b931eeaca190ef7fb6da21ae31b973a5b6b05 Mon Sep 17 00:00:00 2001 From: Christian Daudt Date: Tue, 24 Sep 2013 13:18:59 -0700 Subject: [PATCH 2/5] ARM: bcm281xx: more descriptive machine string Add SoC model to DT_MACHINE_START string. Signed-off-by: Christian Daudt Reviewed-by: Markus Mayer Reviewed-by: Mark Hambleton Reviewed-by: James King --- arch/arm/mach-bcm/board_bcm281xx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-bcm/board_bcm281xx.c b/arch/arm/mach-bcm/board_bcm281xx.c index 8d9f931164bb..dcfaf4ab25d6 100644 --- a/arch/arm/mach-bcm/board_bcm281xx.c +++ b/arch/arm/mach-bcm/board_bcm281xx.c @@ -67,7 +67,7 @@ static void __init board_init(void) static const char * const bcm11351_dt_compat[] = { "brcm,bcm11351", NULL, }; -DT_MACHINE_START(BCM11351_DT, "Broadcom Application Processor") +DT_MACHINE_START(BCM11351_DT, "BCM281xx Broadcom Application Processor") .init_time = clocksource_of_init, .init_machine = board_init, .restart = bcm_kona_restart, From badb92389870e5d20ff8155e8582b29533239e4f Mon Sep 17 00:00:00 2001 From: Christian Daudt Date: Mon, 23 Sep 2013 10:20:33 -0700 Subject: [PATCH 3/5] rename ARCH_BCM to ARCH_BCM_MOBILE (mach-bcm) Currently ARCH_BCM has been used for Broadcom Mobile V7 based SoCs. In order to allow other Broadcom SoCs to also use mach-bcm directory and files, this patch renames the original ARCH_BCM to ARCH_BCM_MOBILE, and uses ARCH_BCM to define any Broadcom chip residing in mach-bcm directory. Signed-off-by: Christian Daudt Acked-by: Olof Johansson Changes from v2: - switch ARCH_MULTIPLATFORM from select to depends - remove 'default y' from BCM_MOBILE Changes from v1: - fix alpha ordering in dts/Makefile - break into 4 patches for separate subsys --- arch/arm/configs/bcm_defconfig | 1 + arch/arm/configs/multi_v7_defconfig | 1 + arch/arm/mach-bcm/Kconfig | 19 +++++++++++++++++-- arch/arm/mach-bcm/Makefile | 2 +- 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/arch/arm/configs/bcm_defconfig b/arch/arm/configs/bcm_defconfig index 6e4931097dd4..efb01325030a 100644 --- a/arch/arm/configs/bcm_defconfig +++ b/arch/arm/configs/bcm_defconfig @@ -27,6 +27,7 @@ CONFIG_MODULE_UNLOAD=y CONFIG_PARTITION_ADVANCED=y CONFIG_EFI_PARTITION=y CONFIG_ARCH_BCM=y +CONFIG_ARCH_BCM_MOBILE=y CONFIG_ARM_THUMBEE=y CONFIG_ARM_ERRATA_743622=y CONFIG_PREEMPT=y diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig index f3935b46df29..24a36e3cb75e 100644 --- a/arch/arm/configs/multi_v7_defconfig +++ b/arch/arm/configs/multi_v7_defconfig @@ -6,6 +6,7 @@ CONFIG_ARCH_MVEBU=y CONFIG_MACH_ARMADA_370=y CONFIG_MACH_ARMADA_XP=y CONFIG_ARCH_BCM=y +CONFIG_ARCH_BCM_MOBILE=y CONFIG_GPIO_PCA953X=y CONFIG_ARCH_HIGHBANK=y CONFIG_ARCH_KEYSTONE=y diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig index 7f6fca801669..01ca25981cc2 100644 --- a/arch/arm/mach-bcm/Kconfig +++ b/arch/arm/mach-bcm/Kconfig @@ -1,5 +1,16 @@ config ARCH_BCM - bool "Broadcom SoC" if ARCH_MULTI_V7 + bool "Broadcom SoC Support" + depends on ARCH_MULTIPLATFORM + help + This enables support for Broadcom ARM based SoC + chips + +if ARCH_BCM + +menu "Broadcom SoC Selection" + +config ARCH_BCM_MOBILE + bool "Broadcom Mobile SoC" if ARCH_MULTI_V7 depends on MMU select ARCH_REQUIRE_GPIOLIB select ARM_ERRATA_754322 @@ -14,7 +25,11 @@ config ARCH_BCM select TICK_ONESHOT select CACHE_L2X0 help - This enables support for system based on Broadcom SoCs. + This enables support for systems based on Broadcom mobile SoCs. It currently supports the 'BCM281XX' family, which includes BCM11130, BCM11140, BCM11351, BCM28145 and BCM28155 variants. + +endmenu + +endif diff --git a/arch/arm/mach-bcm/Makefile b/arch/arm/mach-bcm/Makefile index e3d03033a7e2..c2ccd5a0f772 100644 --- a/arch/arm/mach-bcm/Makefile +++ b/arch/arm/mach-bcm/Makefile @@ -10,6 +10,6 @@ # of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. -obj-$(CONFIG_ARCH_BCM) := board_bcm281xx.o bcm_kona_smc.o bcm_kona_smc_asm.o kona.o +obj-$(CONFIG_ARCH_BCM_MOBILE) := board_bcm281xx.o bcm_kona_smc.o bcm_kona_smc_asm.o kona.o plus_sec := $(call as-instr,.arch_extension sec,+sec) AFLAGS_bcm_kona_smc_asm.o :=-Wa,-march=armv7-a$(plus_sec) From e84dfa26a02ad75a331305baafcf14645fdfc76e Mon Sep 17 00:00:00 2001 From: Christian Daudt Date: Tue, 24 Sep 2013 13:20:52 -0700 Subject: [PATCH 4/5] ARM: bcm281xx: Add ARCH Timers to config Add HAVE_ARM_ARCH_TIMER to Broadcom Kconfig as it is required for some Mobile SoCs. Signed-off-by: Christian Daudt Reviewed-by: Markus Mayer Reviewed-by: Mark Hambleton Reviewed-by: James King --- arch/arm/mach-bcm/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig index 01ca25981cc2..9fe6d88737ed 100644 --- a/arch/arm/mach-bcm/Kconfig +++ b/arch/arm/mach-bcm/Kconfig @@ -24,6 +24,7 @@ config ARCH_BCM_MOBILE select SPARSE_IRQ select TICK_ONESHOT select CACHE_L2X0 + select HAVE_ARM_ARCH_TIMER help This enables support for systems based on Broadcom mobile SoCs. It currently supports the 'BCM281XX' family, which includes From 2d58b26550ad5d869118c77b3db8feb942e54be0 Mon Sep 17 00:00:00 2001 From: Tim Kryger Date: Mon, 14 Oct 2013 14:41:59 -0700 Subject: [PATCH 5/5] ARM: bcm_defconfig: Run "make savedefconfig" Several of the options in bcm_defconfig have gotten out of date so regenerate it with "make savedefconfig" to keep things fresh. Signed-off-by: Tim Kryger Reviewed-by: Matt Porter --- arch/arm/configs/bcm_defconfig | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/arch/arm/configs/bcm_defconfig b/arch/arm/configs/bcm_defconfig index efb01325030a..3a138af6e2fb 100644 --- a/arch/arm/configs/bcm_defconfig +++ b/arch/arm/configs/bcm_defconfig @@ -1,4 +1,3 @@ -CONFIG_EXPERIMENTAL=y # CONFIG_LOCALVERSION_AUTO is not set # CONFIG_SWAP is not set CONFIG_SYSVIPC=y @@ -25,11 +24,8 @@ CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y # CONFIG_BLK_DEV_BSG is not set CONFIG_PARTITION_ADVANCED=y -CONFIG_EFI_PARTITION=y CONFIG_ARCH_BCM=y -CONFIG_ARCH_BCM_MOBILE=y CONFIG_ARM_THUMBEE=y -CONFIG_ARM_ERRATA_743622=y CONFIG_PREEMPT=y CONFIG_AEABI=y # CONFIG_OABI_COMPAT is not set @@ -51,7 +47,6 @@ CONFIG_UNIX_DIAG=y CONFIG_NET_KEY=y CONFIG_INET=y CONFIG_IP_MULTICAST=y -CONFIG_ARPD=y CONFIG_SYN_COOKIES=y CONFIG_TCP_MD5SIG=y CONFIG_IPV6=y @@ -96,7 +91,6 @@ CONFIG_MMC_UNSAFE_RESUME=y CONFIG_MMC_BLOCK_MINORS=32 CONFIG_MMC_TEST=y CONFIG_MMC_SDHCI=y -CONFIG_MMC_SDHCI_PLTFM=y CONFIG_MMC_SDHCI_BCM_KONA=y CONFIG_NEW_LEDS=y CONFIG_LEDS_CLASS=y @@ -118,12 +112,12 @@ CONFIG_CONFIGFS_FS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_PRINTK_TIME=y -CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_INFO=y CONFIG_DEBUG_FS=y +CONFIG_MAGIC_SYSRQ=y CONFIG_DETECT_HUNG_TASK=y CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=110 CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y -CONFIG_DEBUG_INFO=y # CONFIG_FTRACE is not set CONFIG_CRC_CCITT=y CONFIG_CRC_T10DIF=y