[OpenWrt-Devel] [PATCH RFC] brcm47xx: image: create common TRX images using new building system

Rafał Miłecki zajec5 at gmail.com
Wed Mar 9 05:07:12 EST 2016


Apart from using our new building system there are 2 more changes:

1) Limit amount of images
So far we were generating all common images (standard one and two with
no loader) for every SUBTARGET. This is not needed, as e.g. the only
device requiring gzipped kernel is legacy Huawei E970.

2) Change output names
The new image building system requires specifying device name. This
forced picking some and resulted in:
openwrt-brcm47xx-$(SUBTARGET)-squashfs.trx
openwrt-brcm47xx-$(SUBTARGET)-squashfs-gz.trx
openwrt-brcm47xx-$(SUBTARGET)-squashfs-noloader-nodictionary.trx
becoming:
openwrt-brcm47xx-$(SUBTARGET)-common-squashfs.trx
openwrt-brcm47xx-$(SUBTARGET)-common-noloader-gz-squashfs.trx
openwrt-brcm47xx-$(SUBTARGET)-common-noloader-nodictionarylzma-squashfs.trx
---
I hope this change will make creating releases much easier. So far we
got some problems to get final TRX images matching device images.

I'm a bit unsure about adding this extra "-common" to output names. I'm
afraid ppl may got used to the old simple names. On the other handle our
new images building system doesn't allow keeping old names.
Maybe we could add support for some extra callback like Image/Finish and
rename them there?
---
 target/linux/brcm47xx/image/Makefile | 34 +++++++++++++++++++---------------
 1 file changed, 19 insertions(+), 15 deletions(-)

diff --git a/target/linux/brcm47xx/image/Makefile b/target/linux/brcm47xx/image/Makefile
index bbdb36b..e452136 100644
--- a/target/linux/brcm47xx/image/Makefile
+++ b/target/linux/brcm47xx/image/Makefile
@@ -141,6 +141,19 @@ define Device/Default
 	IMAGE/trx := trx-with-loader
 endef
 
+define Device/common
+endef
+
+define Device/common-noloader-gz
+	KERNEL_NAME = vmlinux.gz
+	IMAGE/trx := trx-without-loader
+endef
+
+define Device/common-noloader-nodictionarylzma
+	KERNEL_NAME = vmlinux-nodictionary.lzma
+	IMAGE/trx := trx-without-loader
+endef
+
 define Device/asus
 	IMAGES := trx
 	IMAGE/trx := trx-with-loader | asus-trx
@@ -209,6 +222,8 @@ ifeq ($(SUBTARGET),generic)
   # BCMA SoC with SSB WiFi
   $(eval $(call LinksysDevice,wrt610n-v2,610N,2.0.0))
   $(eval $(call LinksysDevice,e3000-v1,61XN,1.0.3))
+
+  TARGET_DEVICES += common
 endif
 
 #################################################
@@ -300,6 +315,8 @@ ifeq ($(SUBTARGET),legacy)
   $(eval $(call NetgearDevice,wgr614-v8,U12H072T00_NETGEAR,2))
   $(eval $(call NetgearDevice,wndr3300-v1,U12H093T00_NETGEAR,2))
   $(eval $(call NetgearDevice,wnr834b-v2,U12H081T00_NETGEAR,2))
+
+  TARGET_DEVICES += common common-noloader-gz
 endif
 
 #################################################
@@ -359,6 +376,8 @@ ifeq ($(SUBTARGET),mips74k)
 #  $(eval $(call NetgearDevice,wnr3500u,U12H136T00_NETGEAR,2))
   $(eval $(call NetgearDevice,wnr3500-v2,U12H127T00_NETGEAR,2))
 #  $(eval $(call NetgearDevice,wnr3500-v2-vc,U12H127T70_NETGEAR,2))
+
+  TARGET_DEVICES += common common-noloader-nodictionarylzma
 endif
 
 #################################################
@@ -379,21 +398,6 @@ endef
 
 # $(1): filesystem type.
 define Image/Build
-	$(STAGING_DIR_HOST)/bin/trx \
-		-m 33554432 \
-		-o $(BIN_DIR)/$(IMG_PREFIX)-$(1).trx \
-		-f $(KDIR)/loader.gz -f $(KDIR)/vmlinux.lzma \
-		$(call trxalign/$(1),$(1))
-	$(STAGING_DIR_HOST)/bin/trx \
-		-m 33554432 \
-		-o $(BIN_DIR)/$(IMG_PREFIX)-$(1)-noloader-nodictionary.trx \
-		-f $(KDIR)/vmlinux-nodictionary.lzma \
-		$(call trxalign/$(1),$(1))
-	$(STAGING_DIR_HOST)/bin/trx \
-		-m 33554432 \
-		-o $(BIN_DIR)/$(IMG_PREFIX)-$(1)-gz.trx \
-		-f $(KDIR)/vmlinux.gz \
-		$(call trxalign/$(1),$(1))
 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
 	$(call Image/Build/Initramfs)
 endif
-- 
1.8.4.5
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list