Add subtargets to the ath25 target. One is for generic firmware images
(including Ubnt), and another one is for Fonera 2.0g (FON2202) firmware
buid. Subtargets now are mostly identical due to identical configs.

This just a preparation for moving some uniq Fonera features (e.g. PCI &
USB support) to dedicated subtarget in order to debloat generic
firmware.

Signed-off-by: Sergey Ryazanov <[email protected]>
---
 target/linux/ath25/Makefile                        |  5 +-
 target/linux/ath25/fon2202/profiles/00-default.mk  | 16 +++++
 target/linux/ath25/fon2202/target.mk               |  5 ++
 .../ath25/{ => generic}/profiles/00-default.mk     |  0
 target/linux/ath25/generic/target.mk               |  5 ++
 target/linux/ath25/image/Makefile                  | 71 ++-------------------
 target/linux/ath25/image/fon2202.mk                | 16 +++++
 target/linux/ath25/image/generic.mk                | 73 ++++++++++++++++++++++
 8 files changed, 122 insertions(+), 69 deletions(-)
 create mode 100644 target/linux/ath25/fon2202/profiles/00-default.mk
 create mode 100644 target/linux/ath25/fon2202/target.mk
 rename target/linux/ath25/{ => generic}/profiles/00-default.mk (100%)
 create mode 100644 target/linux/ath25/generic/target.mk
 create mode 100644 target/linux/ath25/image/fon2202.mk
 create mode 100644 target/linux/ath25/image/generic.mk

diff --git a/target/linux/ath25/Makefile b/target/linux/ath25/Makefile
index cb8b7ec1be..19e1c98ad4 100644
--- a/target/linux/ath25/Makefile
+++ b/target/linux/ath25/Makefile
@@ -10,14 +10,11 @@ ARCH:=mips
 BOARD:=ath25
 BOARDNAME:=Atheros AR231x/AR5312
 FEATURES:=squashfs low_mem small_flash
+SUBTARGETS:=generic fon2202
 MAINTAINER:=Sergey Ryazanov <[email protected]>
 
 KERNEL_PATCHVER:=4.14
 
-define Target/Description
-       Build firmware images for Atheros SoC boards
-endef
-
 include $(INCLUDE_DIR)/target.mk
 
 DEFAULT_PACKAGES += wpad-mini kmod-ath5k swconfig kmod-gpio-button-hotplug
diff --git a/target/linux/ath25/fon2202/profiles/00-default.mk 
b/target/linux/ath25/fon2202/profiles/00-default.mk
new file mode 100644
index 0000000000..130ecd50d0
--- /dev/null
+++ b/target/linux/ath25/fon2202/profiles/00-default.mk
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2011 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/Default
+       NAME:=Default Profile
+       PRIORITY:=1
+endef
+
+define Profile/Default/Description
+       Default package set for Fonera 2.0g (FON2202).
+endef
+$(eval $(call Profile,Default))
diff --git a/target/linux/ath25/fon2202/target.mk 
b/target/linux/ath25/fon2202/target.mk
new file mode 100644
index 0000000000..0c83b0494e
--- /dev/null
+++ b/target/linux/ath25/fon2202/target.mk
@@ -0,0 +1,5 @@
+BOARDNAME:=Fonera 2.0g (FON2202)
+
+define Target/Description
+       Build firmware images for Fonera 2.0g (FON2202) wireless router.
+endef
diff --git a/target/linux/ath25/profiles/00-default.mk 
b/target/linux/ath25/generic/profiles/00-default.mk
similarity index 100%
rename from target/linux/ath25/profiles/00-default.mk
rename to target/linux/ath25/generic/profiles/00-default.mk
diff --git a/target/linux/ath25/generic/target.mk 
b/target/linux/ath25/generic/target.mk
new file mode 100644
index 0000000000..e534009efa
--- /dev/null
+++ b/target/linux/ath25/generic/target.mk
@@ -0,0 +1,5 @@
+BOARDNAME:=Generic
+
+define Target/Description
+       Build firmware images for generic Atheros AR231x/AR5312 based boards.
+endef
diff --git a/target/linux/ath25/image/Makefile 
b/target/linux/ath25/image/Makefile
index 5a20bdb644..0d8917944e 100644
--- a/target/linux/ath25/image/Makefile
+++ b/target/linux/ath25/image/Makefile
@@ -7,14 +7,12 @@
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/image.mk
 
-define Build/mkfwimage
-       $(STAGING_DIR_HOST)/bin/mkfwimage \
-               -B $(1).$(VERSION_DIST).$(REVISION) \
-               -k $(IMAGE_KERNEL) \
-               -r $(IMAGE_ROOTFS) \
-               -o [email protected] && \
-       mv [email protected] $@
-endef
+ifeq ($(SUBTARGET),generic)
+include ./generic.mk
+endif
+ifeq ($(SUBTARGET),fon2202)
+include ./fon2202.mk
+endif
 
 define Build/combined-image
        -sh $(TOPDIR)/scripts/combined-image.sh \
@@ -24,19 +22,6 @@ define Build/combined-image
        mv [email protected] $@
 endef
 
-define Build/mkmylofw
-       $(STAGING_DIR_HOST)/bin/mkmylofw -B $(1) \
-               -p0x020000:0x130000:ah:0x80041000:linux:$(IMAGE_KERNEL) \
-               -p0x150000:0x2a0000:::rootfs:$(IMAGE_ROOTFS) \
-               [email protected] && \
-       mv [email protected] $@
-endef
-
-define Build/gzip-kernel
-       gzip -9n -c $@ > [email protected]
-       dd [email protected] of=$@ bs=65536 conv=sync
-endef
-
 define Build/lzma-kernel
        $(STAGING_DIR_HOST)/bin/lzma e $@ [email protected]
        dd [email protected] of=$@ bs=65536 conv=sync
@@ -60,48 +45,4 @@ define Device/Default
   FILESYSTEMS := squashfs
 endef
 
-define Device/generic
-  DEVICE_TITLE := Generic Images
-  IMAGES := kernel.lzma kernel.elf kernel.gz rootfs.bin sysupgrade.bin
-  IMAGE/kernel.gz := elf-kernel | gzip-kernel
-  IMAGE/kernel.elf := elf-kernel
-  IMAGE/kernel.lzma := elf-kernel | lzma-kernel
-  IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
-  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | 
combined-image
-  IMAGE_NAME = $$(IMAGE_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
-endef
-TARGET_DEVICES += generic
-
-define Device/ubnt2-pico2
-  DEVICE_TITLE := Ubiquiti XS2-8
-  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage 
XS2-8 -v XS2.ar2316
-endef
-TARGET_DEVICES += ubnt2-pico2
-
-define Device/ubnt2
-  DEVICE_TITLE := Ubiquiti XS2
-  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage 
XS2 -v XS2.ar2316
-endef
-TARGET_DEVICES += ubnt2
-
-define Device/ubnt5
-  DEVICE_TITLE := Ubiquiti XS5
-  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage 
XS5 -v XS5.ar2313
-endef
-TARGET_DEVICES += ubnt5
-
-define Device/np25g
-  DEVICE_TITLE := np25g
-  KERNEL := kernel-bin | gzip-kernel
-  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw 
np25g
-endef
-#TARGET_DEVICES += np25g
-
-define Device/wpe53g
-  DEVICE_TITLE := wpe53g
-  KERNEL := kernel-bin | gzip-kernel
-  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw 
wpe53g
-endef
-#TARGET_DEVICES += wpe53g
-
 $(eval $(call BuildImage))
diff --git a/target/linux/ath25/image/fon2202.mk 
b/target/linux/ath25/image/fon2202.mk
new file mode 100644
index 0000000000..af97ac536a
--- /dev/null
+++ b/target/linux/ath25/image/fon2202.mk
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2006-2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Device/fon2202
+  DEVICE_TITLE := Fonera 2.0g (FON2202)
+  IMAGES := kernel.lzma rootfs.bin sysupgrade.bin
+  IMAGE/kernel.lzma := elf-kernel | lzma-kernel
+  IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | 
combined-image
+  IMAGE_NAME = $$(IMAGE_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
+endef
+TARGET_DEVICES += fon2202
diff --git a/target/linux/ath25/image/generic.mk 
b/target/linux/ath25/image/generic.mk
new file mode 100644
index 0000000000..523e217231
--- /dev/null
+++ b/target/linux/ath25/image/generic.mk
@@ -0,0 +1,73 @@
+#
+# Copyright (C) 2006-2010 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Build/mkfwimage
+       $(STAGING_DIR_HOST)/bin/mkfwimage \
+               -B $(1).$(VERSION_DIST).$(REVISION) \
+               -k $(IMAGE_KERNEL) \
+               -r $(IMAGE_ROOTFS) \
+               -o [email protected] && \
+       mv [email protected] $@
+endef
+
+define Build/mkmylofw
+       $(STAGING_DIR_HOST)/bin/mkmylofw -B $(1) \
+               -p0x020000:0x130000:ah:0x80041000:linux:$(IMAGE_KERNEL) \
+               -p0x150000:0x2a0000:::rootfs:$(IMAGE_ROOTFS) \
+               [email protected] && \
+       mv [email protected] $@
+endef
+
+define Build/gzip-kernel
+       gzip -9n -c $@ > [email protected]
+       dd [email protected] of=$@ bs=65536 conv=sync
+endef
+
+
+define Device/generic
+  DEVICE_TITLE := Generic Images
+  IMAGES := kernel.lzma kernel.elf kernel.gz rootfs.bin sysupgrade.bin
+  IMAGE/kernel.gz := elf-kernel | gzip-kernel
+  IMAGE/kernel.elf := elf-kernel
+  IMAGE/kernel.lzma := elf-kernel | lzma-kernel
+  IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | 
combined-image
+  IMAGE_NAME = $$(IMAGE_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
+endef
+TARGET_DEVICES += generic
+
+define Device/ubnt2-pico2
+  DEVICE_TITLE := Ubiquiti XS2-8
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage 
XS2-8 -v XS2.ar2316
+endef
+TARGET_DEVICES += ubnt2-pico2
+
+define Device/ubnt2
+  DEVICE_TITLE := Ubiquiti XS2
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage 
XS2 -v XS2.ar2316
+endef
+TARGET_DEVICES += ubnt2
+
+define Device/ubnt5
+  DEVICE_TITLE := Ubiquiti XS5
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage 
XS5 -v XS5.ar2313
+endef
+TARGET_DEVICES += ubnt5
+
+define Device/np25g
+  DEVICE_TITLE := np25g
+  KERNEL := kernel-bin | gzip-kernel
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw 
np25g
+endef
+#TARGET_DEVICES += np25g
+
+define Device/wpe53g
+  DEVICE_TITLE := wpe53g
+  KERNEL := kernel-bin | gzip-kernel
+  IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw 
wpe53g
+endef
+#TARGET_DEVICES += wpe53g
-- 
2.16.1


_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/listinfo/openwrt-devel

Reply via email to