From 1ff43f7fe9fc03e8ccf72b0f77c8aa17e992296c Mon Sep 17 00:00:00 2001
From: Oussama Ghorbel <oussama.ghorbel@iopsys.eu>
Date: Mon, 20 Apr 2020 12:09:01 +0200
Subject: [PATCH] added initial bcm 963158 support

---
 iopsys-brcm63xx-arm/Config.in                 |  5 ++
 .../base-files/lib/db/boards/963158REF_ARC    | 54 +++++++++++++++++++
 iopsys-brcm63xx-arm/image/Config.in           |  5 +-
 iopsys-brcm63xx-arm/profiles/iopsys.mk        | 11 ++++
 4 files changed, 74 insertions(+), 1 deletion(-)
 create mode 100644 iopsys-brcm63xx-arm/base-files/lib/db/boards/963158REF_ARC

diff --git a/iopsys-brcm63xx-arm/Config.in b/iopsys-brcm63xx-arm/Config.in
index 7c65b8969..d28d42537 100644
--- a/iopsys-brcm63xx-arm/Config.in
+++ b/iopsys-brcm63xx-arm/Config.in
@@ -69,6 +69,8 @@ menu "Target options Brcm63xx (ARM/MIPS)"
 	default "96846GWO" if TARGET_iopsys_brcm63xx_arm_panther
 	default "96856GWO" if TARGET_iopsys_brcm63xx_arm_xue534
 
+	default "963158GWV" if TARGET_iopsys_brcm63xx_arm_smarthub3
+
 
     menuconfig BCM_CHIP_ID
         string
@@ -84,6 +86,8 @@ menu "Target options Brcm63xx (ARM/MIPS)"
 	default "6846" if TARGET_iopsys_brcm63xx_arm_panther
 	default "6856" if TARGET_iopsys_brcm63xx_arm_xue534
 
+	default "63158" if TARGET_iopsys_brcm63xx_arm_smarthub3
+
     menuconfig BCM_TOOLTUPLE
         string "Broadcom toolchain tuple"
         default "arm-buildroot-linux-gnueabi-" if TARGET_iopsys_brcm63xx_arm && (BRCM_SDK_VER_502003 || BRCM_SDK_VER_502006 || BRCM_SDK_VER_502007)
@@ -107,6 +111,7 @@ menu "Target options Brcm63xx (ARM/MIPS)"
         default "TIGER"      if TARGET_iopsys_brcm63xx_arm_tiger
         default "PANTHER"     if TARGET_iopsys_brcm63xx_arm_panther
 	default "XUG534"     if TARGET_iopsys_brcm63xx_arm_xue534
+        default "SMARTHUB3"     if TARGET_iopsys_brcm63xx_arm_smarthub3
 
 	config TARGET_HAS_VOICE
 		bool "Whether to build voice or exclude it entirely"
diff --git a/iopsys-brcm63xx-arm/base-files/lib/db/boards/963158REF_ARC b/iopsys-brcm63xx-arm/base-files/lib/db/boards/963158REF_ARC
new file mode 100644
index 000000000..54ecb1c1e
--- /dev/null
+++ b/iopsys-brcm63xx-arm/base-files/lib/db/boards/963158REF_ARC
@@ -0,0 +1,54 @@
+
+config board 'board'
+	option hasAdsl '1'
+	option hasVdsl '1'
+	option hasVoice '1'
+	option hasDect '1'
+	option hasUsb '1'
+	option hasCatv '0'
+	option hasSfp '1'
+	option VoicePorts '6'
+	option VoicePortNames 'DECT_1 DECT_2 DECT_3 DECT_4 Tel_1 Tel_2'
+	option VoicePortOrder 'brcm0 brcm1 brcm2 brcm3 brcm5 brcm4'
+	option VoiceLeds '1'
+	option hasWifi '1'
+	option ethernetPorts '5'
+	option tm '1'
+	option ethernetPortNames 'LAN1 LAN2 LAN3 LAN4 WAN'
+	option ethernetPortOrder 'eth1 eth2 eth3 eth4 eth0'
+	option ethernetLanPorts 'eth1 eth2 eth3 eth4'
+	option ethernetWanPort 'eth0'
+	option adslWanPort 'atm0'
+	option vdslWanPort 'ptm0'
+	option wpsButtonGpio '0'
+
+config pci_slot 'pci'
+        option 43a0 AC
+        option 43a2 AC
+        option 43bc AC
+        option 43c5 AC
+
+config wifi-chip '435f'
+        option bands 'b'
+
+config wifi-chip '43a0'
+        option bands 'a'
+        option is_ac '1'
+
+config wifi-chip '43a2'
+        option bands 'a'
+        option is_ac '1'
+
+config wifi-chip '43a9'
+        option bands 'b'
+
+config wifi-chip '43bc'
+        option bands 'b'
+	option radarthrs '0x6a4 0x30 0x6a4 0x30 0x6a0 0x30 0x6ac 0x30 0x6a6 0x30 0x69c 0x30'
+
+config wifi-chip '43c5'
+	option bands 'a'
+	option is_ac '1'
+	option radarthrs '0x6ac 0x30 0x6aa 0x30 0x6b4 0x30 0x6ac 0x30 0x6aa 0x30 0x6b4 0x30 0x6aa 0x30 0x6aa 0x30'
+	list country_override 'EU/13:E0/788'
+
diff --git a/iopsys-brcm63xx-arm/image/Config.in b/iopsys-brcm63xx-arm/image/Config.in
index fe78ff54f..b6384ee92 100644
--- a/iopsys-brcm63xx-arm/image/Config.in
+++ b/iopsys-brcm63xx-arm/image/Config.in
@@ -102,7 +102,8 @@ config TARGET_NAND_DEVSZ
 	default "268435456"  if TARGET_iopsys_brcm63xx_arm_tiger
 	default "268435456"  if TARGET_iopsys_brcm63xx_arm_panther
 	default "268435456"  if TARGET_iopsys_brcm63xx_arm_xue534
-	range 67108864 4294967296
+	default "8589934592" if TARGET_iopsys_brcm63xx_arm_smarthub3
+	range 67108864 8589934592
 	depends on NAND_SUPPORT
 
 config TARGET_NAND_BLOCKSZ
@@ -119,6 +120,7 @@ config TARGET_NAND_BLOCKSZ
 	default "131072"     if TARGET_iopsys_brcm63xx_arm_tiger
 	default "131072"     if TARGET_iopsys_brcm63xx_arm_panther
 	default "131072"     if TARGET_iopsys_brcm63xx_arm_xue534
+	default "262144"     if TARGET_iopsys_brcm63xx_arm_smarthub3
 	range 16384 1048576
 	depends on NAND_SUPPORT
 
@@ -136,6 +138,7 @@ config TARGET_NAND_PAGESZ
 	default "2048"       if TARGET_iopsys_brcm63xx_arm_tiger
 	default "2048"       if TARGET_iopsys_brcm63xx_arm_panther
 	default "2048"       if TARGET_iopsys_brcm63xx_arm_xue534
+	default "4096"       if TARGET_iopsys_brcm63xx_arm_smarthub3
 	range 256 65536
 	depends on NAND_SUPPORT
 
diff --git a/iopsys-brcm63xx-arm/profiles/iopsys.mk b/iopsys-brcm63xx-arm/profiles/iopsys.mk
index 85a20bce1..6f7d8a6d4 100644
--- a/iopsys-brcm63xx-arm/profiles/iopsys.mk
+++ b/iopsys-brcm63xx-arm/profiles/iopsys.mk
@@ -105,3 +105,14 @@ define Profile/xue534/Description
 endef
 
 $(eval $(call Profile,xue534))
+
+#################### SmartHub3
+define Profile/smarthub3
+  NAME:=smarthub3
+endef
+
+define Profile/sphinx/Description
+	smarthub3 profile
+endef
+
+$(eval $(call Profile,smarthub3))
-- 
GitLab