From 2a8fe45df5a23a29ff93686aeccf42f80acb5f1f Mon Sep 17 00:00:00 2001 From: Mathias Kresin Date: Sat, 26 Jan 2019 08:57:34 +0100 Subject: [PATCH] gemini: add wiligear image build code They were dropped with 6409b159e8b8 ("gemini: switch to 4.14") without any explaination. The image generation is disabled for now as it would break the build for the target. The mkfwimage2 call need to be adjusted to reflect the real size of kernel and rootfs. Nevertheless, add the required code to give interested parties a chance to fix the remaining issues. The dts would need to use the ecoscentric,redboot-fis-partitions partition parser to get the correct partition offsets and size. It's expected that the OEM firmware adjusts the on flash partition table with the values defined in the image header. Signed-off-by: Mathias Kresin --- target/linux/gemini/image/Makefile | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/target/linux/gemini/image/Makefile b/target/linux/gemini/image/Makefile index 24d97508c2..aca6e11df2 100644 --- a/target/linux/gemini/image/Makefile +++ b/target/linux/gemini/image/Makefile @@ -45,6 +45,17 @@ define Build/dns313-images rm -rf $@.tmp endef +define Build/wiligear-image + $(STAGING_DIR_HOST)/bin/mkfwimage2 \ + -m GEOS -f 0x30000000 -z \ + -v $(1).v5.00.SL3512.OpenWrt.00000.000000.000000 \ + -p Kernel:0x020000:0x100000:0:0:$(IMAGE_KERNEL) \ + -p Ramdisk:0x120000:0x500000:0:0:$@ \ + -o $@.new + + mv $@.new $@ +endef + # Create the special NAS4220B and Itian Square One SQ201 image # format with the squashfs and overlay inside the "rd.gz" file. # We pad it out to 6144K which is the size of the initramfs partition. @@ -143,18 +154,28 @@ define Device/teltonika_rut1xx endef TARGET_DEVICES += teltonika_rut1xx +# The wiliboard images need some changes to be functional and buildable. +# +# The dts would need to use the ecoscentric,redboot-fis-partitions partition +# parser to get the correct partition offsets and size. +# +# The mkfwimage2 call need to be adjusted to reflect the real size of kernel +# and rootfs. It is expected that the OEM firmware adjusts the on flash +# partition table with the values defined in the image header. define Device/wiliboard_wbd111 DEVICE_TITLE := Wiliboard WBD-111 DEVICE_DTS := gemini-wbd111 KERNEL := kernel-bin | append-dtb | wbd-nops + IMAGES := factory.bin + IMAGE/factory.bin := append-rootfs | pad-rootfs | wiligear-image "WILI-S.WILIBOARD" endef -TARGET_DEVICES += wiliboard_wbd111 define Device/wiliboard_wbd222 DEVICE_TITLE := Wiliboard WBD-222 DEVICE_DTS := gemini-wbd222 KERNEL := kernel-bin | append-dtb | wbd-nops + IMAGES := factory.bin + IMAGE/factory.bin := append-rootfs | pad-rootfs | wiligear-image "WILI-S.WBD222" endef -TARGET_DEVICES += wiliboard_wbd222 $(eval $(call BuildImage))