Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5b293ebe authored by Hauke Mehrtens's avatar Hauke Mehrtens Committed by Matt Porter
Browse files

ARM: BCM5301X: initial support for the BCM5301X/BCM470X SoCs with ARM CPU

This patch adds support for the BCM5301X/BCM470X SoCs with an ARM CPUs.
Currently just booting to a shell is working and nothing else, no
Ethernet, wifi, flash, ...
I have some pending patches to make Ethernet work for this device.
Mostly device tree support for bcma is missing.

This SoC is used in small office and home router with Broadcom SoCs
it's internal name is Northstar. This code should support the BCM4707,
BCM4708, BCM4709, BCM53010, BCM53011 and BCM53012 SoC. It uses one or
two ARM Cortex A9 Cores, some highlights are 2 PCIe 2.0 controllers,
4 Gigabit Ethernet MACs and a USB 3.0 host controller.

This SoC uses a dual core CPU, but this is currently not implemented.
More information about this SoC can be found here:
http://www.anandtech.com/show/5925/broadcom-announces-bcm4708x-and-bcm5301x-socs-for-80211ac-routers



Signed-off-by: default avatarHauke Mehrtens <hauke@hauke-m.de>
Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
Acked-by: default avatarChristian Daudt <bcm@fixthebug.org>
Signed-off-by: default avatarMatt Porter <mporter@linaro.org>
parent c43bad6f
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
Broadcom BCM4708 device tree bindings
-------------------------------------------

Boards with the BCM4708 SoC shall have the following properties:

Required root node property:

compatible = "brcm,bcm4708";
+8 −0
Original line number Diff line number Diff line
@@ -1880,6 +1880,14 @@ F: arch/arm/boot/dts/bcm2835*
F:	arch/arm/configs/bcm2835_defconfig
F:	drivers/*/*bcm2835*

BROADCOM BCM5301X ARM ARCHICTURE
M:	Hauke Mehrtens <hauke@hauke-m.de>
L:	linux-arm-kernel@lists.infradead.org
S:	Maintained
F:	arch/arm/mach-bcm/bcm_5301x.c
F:	arch/arm/boot/dts/bcm5301x.dtsi
F:	arch/arm/boot/dts/bcm470*

BROADCOM TG3 GIGABIT ETHERNET DRIVER
M:	Nithin Nayak Sujir <nsujir@broadcom.com>
M:	Michael Chan <mchan@broadcom.com>
+1 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ CONFIG_ARCH_MVEBU=y
CONFIG_MACH_ARMADA_370=y
CONFIG_MACH_ARMADA_XP=y
CONFIG_ARCH_BCM=y
CONFIG_ARCH_BCM_5301X=y
CONFIG_ARCH_BCM_MOBILE=y
CONFIG_ARCH_BERLIN=y
CONFIG_MACH_BERLIN_BG2=y
+26 −0
Original line number Diff line number Diff line
@@ -31,6 +31,32 @@ config ARCH_BCM_MOBILE
	  BCM11130, BCM11140, BCM11351, BCM28145 and
	  BCM28155 variants.

config ARCH_BCM_5301X
	bool "Broadcom BCM470X / BCM5301X ARM SoC" if ARCH_MULTI_V7
	depends on MMU
	select ARM_GIC
	select CACHE_L2X0
	select HAVE_ARM_SCU if SMP
	select HAVE_ARM_TWD if SMP
	select HAVE_SMP
	select COMMON_CLK
	select GENERIC_CLOCKEVENTS
	select ARM_GLOBAL_TIMER
	select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
	select MIGHT_HAVE_PCI
	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

endmenu

endif
+1 −0
Original line number Diff line number Diff line
@@ -13,3 +13,4 @@
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)
obj-$(CONFIG_ARCH_BCM_5301X)	+= bcm_5301x.o
Loading