aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2009-11-28 08:25:56 +0000
committerGabor Juhos <juhosg@openwrt.org>2009-11-28 08:25:56 +0000
commitbd4bec689d27485ec83a45ccd08a3107424ef6f0 (patch)
tree1429678f2da79a548f9d174960038104ed151fd4
parent09b5ed9641aee8b43226e9800e5cc2786982bbfa (diff)
downloadupstream-bd4bec689d27485ec83a45ccd08a3107424ef6f0.tar.gz
upstream-bd4bec689d27485ec83a45ccd08a3107424ef6f0.tar.bz2
upstream-bd4bec689d27485ec83a45ccd08a3107424ef6f0.zip
ar71xx: create sysupgrade image for the WNDR3700
SVN-Revision: 18570
-rwxr-xr-xtarget/linux/ar71xx/base-files/lib/upgrade/platform.sh7
-rw-r--r--target/linux/ar71xx/image/Makefile45
2 files changed, 52 insertions, 0 deletions
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
index 8ee412ed03..97c3a41dae 100755
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -82,6 +82,13 @@ platform_check_image() {
}
return 0
;;
+ wndr3700)
+ [ "$magic" != "3337" ] && {
+ echo "Invalid image type."
+ return 1
+ }
+ return 0
+ ;;
wrt160nl)
[ "$magic" != "4e4c" ] && {
echo "Invalid image type."
diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile
index 79f7b7c5fa..4c88a85e64 100644
--- a/target/linux/ar71xx/image/Makefile
+++ b/target/linux/ar71xx/image/Makefile
@@ -215,6 +215,34 @@ define Image/Build/CyberTAN
-o $(call imgname,$(1),$(2)).bin
endef
+wndr3700_mtdlayout=mtdparts=spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,1024k(kernel),6656k(rootfs),64k(art)ro,7680k@0x70000(firmware)
+define Image/Build/WNDR3700
+ $(call PatchKernelLzma,$(2),$(3) $(wndr3700_mtdlayout))
+ $(call MkImageLzma,$(KDIR)/vmlinux-$(2).bin.lzma,$(KDIR)/vmlinux-$(2).uImage)
+ mkdir $(KDIR)/wndr3700
+ mkdir $(KDIR)/wndr3700/image
+ $(STAGING_DIR_HOST)/bin/wndr3700 \
+ $(KDIR)/vmlinux-$(2).uImage \
+ $(KDIR)/wndr3700/image/uImage
+ $(STAGING_DIR_HOST)/bin/mksquashfs-lzma \
+ $(KDIR)/wndr3700 $(KDIR)/vmlinux-$(2).uImage.squashfs.tmp \
+ -nopad -noappend -root-owned -be
+ -rm -rf $(KDIR)/wndr3700
+ mkimage -A mips -O linux -T filesystem -C none \
+ -a 0xbf070000 -e 0xbf070000 \
+ -n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
+ -d $(KDIR)/vmlinux-$(2).uImage.squashfs.tmp \
+ $(KDIR)/vmlinux-$(2).uImage.squashfs.tmp2
+ $(STAGING_DIR_HOST)/bin/wndr3700 \
+ $(KDIR)/vmlinux-$(2).uImage.squashfs.tmp2 \
+ $(KDIR)/vmlinux-$(2).uImage.squashfs
+ -rm -f $(KDIR)/vmlinux-$(2).uImage.squashfs.tmp*
+ ( \
+ dd if=$(KDIR)/vmlinux-$(2).uImage.squashfs bs=1M conv=sync; \
+ dd if=$(KDIR)/root.$(1) bs=64k; \
+ ) > $(call imgname,$(1),$(2))-sysupgrade.bin
+endef
+
define Image/Build/Template/Compex
$(call Image/Build/MyLoader,$(1),$(2))
endef
@@ -319,6 +347,18 @@ define Image/Build/Template/Planex/jffs2-64k
$(call Image/Build/Template/Planex,jffs2-64k,$(1),$(2))
endef
+define Image/Build/Template/WNDR3700
+ $(call Image/Build/WNDR3700,$(1),$(2),$(3))
+endef
+
+define Image/Build/Template/WNDR3700/squashfs
+ $(call Image/Build/Template/WNDR3700,squashfs,$(1),$(2))
+endef
+
+define Image/Build/Template/WNDR3700/jffs2-64k
+ $(call Image/Build/Template/WNDR3700,jffs2-64k,$(1),$(2))
+endef
+
define Image/Build/Profile/AP83
$(call Image/Build/Template/AP83/$(1),ap83,board=AP83)
endef
@@ -400,6 +440,10 @@ define Image/Build/Profile/TLWR941NDV2
$(call Image/Build/Template/TPLINK/$(1),tl-wr941ndv2,board=TL-WR941ND,TL-WR941NDv2)
endef
+define Image/Build/Profile/WNDR3700
+ $(call Image/Build/Template/WNDR3700/$(1),wndr3700,board=WNDR3700)
+endef
+
define Image/Build/Profile/WRT400N
$(call Image/Build/Template/WRT400N/$(1),wrt400n,board=WRT400N)
endef
@@ -422,6 +466,7 @@ define Image/Build/Profile/Default
$(call Image/Build/Profile/TLWR941NDV2,$(1))
$(call Image/Build/Profile/UBNT,$(1))
$(call Image/Build/Profile/WP543,$(1))
+ $(call Image/Build/Profile/WNDR3700,$(1))
$(call Image/Build/Profile/WRT400N,$(1))
$(call Image/Build/Profile/WRT160NL,$(1))
endef