Broadcom SoCs are nicely split into 2 groups:
1) SSB based with BMIPS3300 and 100Mb/s ethernet cores
2) BCMA based with MIPS 74K and 1000M/b ethernet core

This allows saving some space using only 2 subtargets. Example savings:
1) Dropping bgmac: 7832 B
2) Dropping CONFIG_BCM47XX_BCMA: 3946 B
3) Dropping CONFIG_MTD_NAND: 15938 B
4) Dropping CONFIG_BCMA: 12572 B
5) Dropping B43_PHY_HT: 4812 B

This will also result in CPU-optimized builds.
---
 target/linux/brcm47xx/Makefile                                |  2 +-
 target/linux/brcm47xx/bmips3300/config-default                |  3 +++
 target/linux/brcm47xx/bmips3300/profiles/100-Broadcom-b43.mk  | 10 ++++++++++
 target/linux/brcm47xx/bmips3300/profiles/101-Broadcom-wl.mk   | 10 ++++++++++
 target/linux/brcm47xx/bmips3300/profiles/105-Broadcom-none.mk | 10 ++++++++++
 target/linux/brcm47xx/bmips3300/target.mk                     |  5 +++++
 6 files changed, 39 insertions(+), 1 deletion(-)
 create mode 100644 target/linux/brcm47xx/bmips3300/config-default
 create mode 100644 target/linux/brcm47xx/bmips3300/profiles/100-Broadcom-b43.mk
 create mode 100644 target/linux/brcm47xx/bmips3300/profiles/101-Broadcom-wl.mk
 create mode 100644 
target/linux/brcm47xx/bmips3300/profiles/105-Broadcom-none.mk
 create mode 100644 target/linux/brcm47xx/bmips3300/target.mk

diff --git a/target/linux/brcm47xx/Makefile b/target/linux/brcm47xx/Makefile
index 5e8bb8b..ef9bd93 100644
--- a/target/linux/brcm47xx/Makefile
+++ b/target/linux/brcm47xx/Makefile
@@ -10,7 +10,7 @@ ARCH:=mipsel
 BOARD:=brcm47xx
 BOARDNAME:=Broadcom BCM47xx/53xx (MIPS)
 FEATURES:=squashfs usb pcmcia
-SUBTARGETS:=generic
+SUBTARGETS:=generic bmips3300
 MAINTAINER:=Hauke Mehrtens <ha...@hauke-m.de>
 
 LINUX_VERSION:=3.10.36
diff --git a/target/linux/brcm47xx/bmips3300/config-default 
b/target/linux/brcm47xx/bmips3300/config-default
new file mode 100644
index 0000000..7c898b7
--- /dev/null
+++ b/target/linux/brcm47xx/bmips3300/config-default
@@ -0,0 +1,3 @@
+# CONFIG_BCM47XX_BCMA is not set
+# CONFIG_MTD_NAND is not set
+# CONFIG_BCMA is not set
diff --git a/target/linux/brcm47xx/bmips3300/profiles/100-Broadcom-b43.mk 
b/target/linux/brcm47xx/bmips3300/profiles/100-Broadcom-b43.mk
new file mode 100644
index 0000000..c88fa0b
--- /dev/null
+++ b/target/linux/brcm47xx/bmips3300/profiles/100-Broadcom-b43.mk
@@ -0,0 +1,10 @@
+define Profile/Broadcom-bmips3300-b43
+  NAME:=Broadcom SoC, all Ethernet, BCM43xx WiFi (b43, default)
+  PACKAGES:=kmod-b44 kmod-tg3 kmod-b43 kmod-b43legacy
+endef
+
+define Profile/Broadcom-bmips3300-b43/Description
+endef
+
+$(eval $(call Profile,Broadcom-bmips3300-b43))
+
diff --git a/target/linux/brcm47xx/bmips3300/profiles/101-Broadcom-wl.mk 
b/target/linux/brcm47xx/bmips3300/profiles/101-Broadcom-wl.mk
new file mode 100644
index 0000000..8a9625a
--- /dev/null
+++ b/target/linux/brcm47xx/bmips3300/profiles/101-Broadcom-wl.mk
@@ -0,0 +1,10 @@
+define Profile/Broadcom-bmips3300-wl
+  NAME:=Broadcom SoC, all Ethernet, BCM43xx WiFi (wl, proprietary)
+  PACKAGES:=kmod-b44 kmod-tg3 -wpad-mini kmod-brcm-wl wlc nas
+endef
+
+define Profile/Broadcom-bmips3300-wl/Description
+endef
+
+$(eval $(call Profile,Broadcom-bmips3300-wl))
+
diff --git a/target/linux/brcm47xx/bmips3300/profiles/105-Broadcom-none.mk 
b/target/linux/brcm47xx/bmips3300/profiles/105-Broadcom-none.mk
new file mode 100644
index 0000000..2ece5a5
--- /dev/null
+++ b/target/linux/brcm47xx/bmips3300/profiles/105-Broadcom-none.mk
@@ -0,0 +1,10 @@
+define Profile/Broadcom-bmips3300-none
+  NAME:=Broadcom SoC, all Ethernet, No WiFi
+  PACKAGES:=kmod-b44 kmod-tg3 -wpad-mini
+endef
+
+define Profile/Broadcom-bmips3300-none/Description
+endef
+
+$(eval $(call Profile,Broadcom-bmips3300-none))
+
diff --git a/target/linux/brcm47xx/bmips3300/target.mk 
b/target/linux/brcm47xx/bmips3300/target.mk
new file mode 100644
index 0000000..0a5502e
--- /dev/null
+++ b/target/linux/brcm47xx/bmips3300/target.mk
@@ -0,0 +1,5 @@
+BOARDNAME:=BMIPS3300
+
+define Target/Description
+       Build firmware for Broadcom BCM47xx and BCM53xx BMIPS3300 devices.
+endef
-- 
1.8.4.5
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to