mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 02:21:52 +09:00
Merge tag 'arm-soc/for-5.20/soc' of https://github.com/Broadcom/stblinux into arm/soc
This pull request contains Broadcom SoC drivers changes for 5.20, please pull the following: - Miaoqian fixes a device_node reference count leak in the Kona SMC initialization code - William moves the 63138 support code to use CONFIG_ARCH_BCMBCA which is how all of those similar SoCs from the BCA division are supported moving forward. This includes machine code and UART low-level debug code. * tag 'arm-soc/for-5.20/soc' of https://github.com/Broadcom/stblinux: ARM: debug: bcmbca: Replace ARCH_BCM_63XX with ARCH_BCMBCA arm: bcmbca: Add BCMBCA sub platforms arm: bcmbca: Move BCM63138 ARCH_BCM_63XX to ARCH_BCMBCA ARM: bcm: Fix refcount leak in bcm_kona_smc_init Link: https://lore.kernel.org/r/20220711164451.3542127-8-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
@@ -271,7 +271,7 @@ choice
|
||||
|
||||
config DEBUG_BCM63XX_UART
|
||||
bool "Kernel low-level debugging on BCM63XX UART"
|
||||
depends on ARCH_BCM_63XX
|
||||
depends on ARCH_BCMBCA
|
||||
|
||||
config DEBUG_BERLIN_UART
|
||||
bool "Marvell Berlin SoC Debug UART"
|
||||
|
||||
@@ -182,23 +182,6 @@ config ARCH_BCM_53573
|
||||
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
|
||||
select ARCH_HAS_RESET_CONTROLLER
|
||||
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
|
||||
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
|
||||
@@ -218,7 +201,7 @@ config ARCH_BRCMSTB
|
||||
This enables support for Broadcom ARM-based set-top box chipsets,
|
||||
including the 7445 family of chips.
|
||||
|
||||
config ARCH_BCMBCA
|
||||
menuconfig ARCH_BCMBCA
|
||||
bool "Broadcom Broadband SoC"
|
||||
depends on ARCH_MULTI_V7
|
||||
select ARM_AMBA
|
||||
@@ -230,4 +213,46 @@ config ARCH_BCMBCA
|
||||
|
||||
This enables support for Broadcom BCA ARM-based broadband chipsets,
|
||||
including the DSL, PON and Wireless family of chips.
|
||||
|
||||
comment "BCMBCA sub platforms"
|
||||
|
||||
if ARCH_BCMBCA
|
||||
|
||||
config ARCH_BCMBCA_CORTEXA7
|
||||
bool "Cortex-A7 SoCs"
|
||||
help
|
||||
Say Y if you intend to run the kernel on a Broadcom Broadband ARM A7
|
||||
based chipset.
|
||||
|
||||
This enables support for Broadcom BCA ARM A7 broadband chipsets,
|
||||
including various DSL, PON and Wireless family of chips.
|
||||
|
||||
config ARCH_BCMBCA_CORTEXA9
|
||||
bool "Cortex-A9 SoCS"
|
||||
select ARM_ERRATA_754322
|
||||
select ARM_ERRATA_764369 if SMP
|
||||
select ARCH_HAS_RESET_CONTROLLER
|
||||
select ARM_GLOBAL_TIMER
|
||||
select CACHE_L2X0
|
||||
select HAVE_ARM_TWD if SMP
|
||||
select HAVE_ARM_SCU if SMP
|
||||
help
|
||||
Say Y if you intend to run the kernel on a Broadcom Broadband ARM A9
|
||||
based BCA chipset.
|
||||
|
||||
This enables support for Broadcom BCA ARM A9 broadband chipset. Currently
|
||||
only DSL chip BCM63138.
|
||||
|
||||
config ARCH_BCMBCA_BRAHMAB15
|
||||
bool "Brahma-B15 SoCs"
|
||||
select ARM_ERRATA_798181 if SMP
|
||||
help
|
||||
Say Y if you intend to run the kernel on a Broadcom Broadband ARM B15
|
||||
based BCA chipset.
|
||||
|
||||
This enables support for Broadcom BCA ARM B15 broadband chipset. Currently
|
||||
only DSL chip BCM63148.
|
||||
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
@@ -57,14 +57,13 @@ ifeq ($(CONFIG_ARCH_BCM_5301X),y)
|
||||
obj-$(CONFIG_SMP) += platsmp.o
|
||||
endif
|
||||
|
||||
# BCM63XXx
|
||||
ifeq ($(CONFIG_ARCH_BCM_63XX),y)
|
||||
obj-y += bcm63xx.o
|
||||
obj-$(CONFIG_SMP) += bcm63xx_smp.o bcm63xx_pmb.o
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_ARCH_BRCMSTB),y)
|
||||
CFLAGS_platsmp-brcmstb.o += -march=armv7-a
|
||||
obj-y += brcmstb.o
|
||||
obj-$(CONFIG_SMP) += platsmp-brcmstb.o
|
||||
endif
|
||||
|
||||
# BCMBCA
|
||||
ifeq ($(CONFIG_ARCH_BCMBCA),y)
|
||||
obj-$(CONFIG_SMP) += bcm63xx_smp.o bcm63xx_pmb.o
|
||||
endif
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
/*
|
||||
* 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 <linux/of_platform.h>
|
||||
|
||||
#include <asm/mach/arch.h>
|
||||
|
||||
static const char * const bcm63xx_dt_compat[] = {
|
||||
"brcm,bcm63138",
|
||||
NULL
|
||||
};
|
||||
|
||||
DT_MACHINE_START(BCM63XXX_DT, "BCM63xx DSL SoC")
|
||||
.dt_compat = bcm63xx_dt_compat,
|
||||
.l2c_aux_val = 0,
|
||||
.l2c_aux_mask = ~0,
|
||||
MACHINE_END
|
||||
@@ -52,6 +52,7 @@ int __init bcm_kona_smc_init(void)
|
||||
return -ENODEV;
|
||||
|
||||
prop_val = of_get_address(node, 0, &prop_size, NULL);
|
||||
of_node_put(node);
|
||||
if (!prop_val)
|
||||
return -EINVAL;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user