summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-06-02 12:43:49 +0000
committerJohn Crispin <john@openwrt.org>2014-06-02 12:43:49 +0000
commit7437d8481431a72709801b225af34e6b66a00720 (patch)
tree08bfad536eb22fd6d5a395ecc15885f57987a8bb /target
parentb6fbe7bd5da6548323030ced25582d90c7a99cc7 (diff)
downloadmtk-20170518-7437d8481431a72709801b225af34e6b66a00720.zip
mtk-20170518-7437d8481431a72709801b225af34e6b66a00720.tar.gz
mtk-20170518-7437d8481431a72709801b225af34e6b66a00720.tar.bz2
ralink: add seama image can be upgrade by sysupgrade
generate sysupgrade image by combine two images. one is kernel image with seama header. another is root fs image. Signed-off-by: michael lee <igvtee@gmail.com> SVN-Revision: 40922
Diffstat (limited to 'target')
-rw-r--r--target/linux/ramips/image/Makefile11
1 files changed, 10 insertions, 1 deletions
diff --git a/target/linux/ramips/image/Makefile b/target/linux/ramips/image/Makefile
index 7d3e826..3b813d8 100644
--- a/target/linux/ramips/image/Makefile
+++ b/target/linux/ramips/image/Makefile
@@ -162,7 +162,8 @@ BuildFirmware/Edimax/initramfs=$(call BuildFirmware/OF/initramfs,$(1),$(2),$(3))
# build Seama header images
define BuildFirmware/Seama/squashfs
- $(call BuildFirmware/OF,$(1),$(2),$(3),$(5))
+ $(call MkImageLzmaDtb,$(2),$(3),$(5))
+ $(eval output_name=$(IMG_PREFIX)-$(2)-$(1)-sysupgrade.bin)
cat $(KDIR)/vmlinux-$(2).bin.lzma $(KDIR)/root.$(1) > $(KDIR)/img_$(2).$(1).tmp
if [ `stat -c%s "$(KDIR)/img_$(2).$(1).tmp"` -gt $$$$(($(5) - 64)) ]; then \
echo "Warning: $(KDIR)/img_$(2).$(1).tmp is too big" >&2; \
@@ -179,6 +180,14 @@ define BuildFirmware/Seama/squashfs
-s $(call imgname,$(1),$(2))-factory.bin \
-m "signature=$(4)" \
-i $(KDIR)/vmlinux-$(2).tmp.seama; \
+ dd if=$(KDIR)/vmlinux-$(2).bin.lzma.padded bs=1 count=`expr \`stat -c%s $(KDIR)/vmlinux-$(2).bin.lzma.padded\` - 64` of=$(KDIR)/vmlinux-$(2)-sysupgrade.tmp; \
+ $(STAGING_DIR_HOST)/bin/seama \
+ -i $(KDIR)/vmlinux-$(2)-sysupgrade.tmp \
+ -m "dev=/dev/mtdblock/2" -m "type=firmware"; \
+ ( \
+ dd if=$(KDIR)/vmlinux-$(2)-sysupgrade.tmp.seama; \
+ dd if=$(KDIR)/root.$(1) bs=64k conv=sync; \
+ ) > $(BIN_DIR)/$(output_name); \
fi
endef
BuildFirmware/Seama/initramfs=$(call BuildFirmware/OF/initramfs,$(1),$(2),$(3))