ramips: RT-N56U support fixes and factory image creation
[openwrt/staging/wigyori.git] / target / linux / ramips / image / Makefile
index 19932f6fe19bb584bdadb65ca7febac1d9a9b9f2..1b342deb7a413ced6b8789611f5d7f60ab7c1571 100644 (file)
@@ -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))
@@ -339,6 +348,7 @@ endef
 Image/Build/Profile/ASL26555=$(call BuildFirmware/ASL26555/$(1),$(1),asl26555,ASL26555)
 
 Image/Build/Profile/AWM002EVB=$(call BuildFirmware/DefaultDualSize/$(1),$(1),awm002-evb,AWM002-EVB)
+Image/Build/Profile/AWAPN2403=$(call BuildFirmware/Default4M/$(1),$(1),awmapn2403,AWAPN2403)
 
 Image/Build/Profile/BC2=$(call BuildFirmware/Default8M/$(1),$(1),bc2,BC2)
 
@@ -454,6 +464,8 @@ Image/Build/Profile/RTG32B1=$(call BuildFirmware/Default4M/$(1),$(1),rt-g32-b1,R
 
 Image/Build/Profile/RTN10PLUS=$(call BuildFirmware/Default4M/$(1),$(1),rt-n10-plus,RT-N10-PLUS)
 
+Image/Build/Profile/RUT5XX=$(call BuildFirmware/Default8M/$(1),$(1),rut5xx,RUT5XX)
+
 Image/Build/Profile/SL-R7205=$(call BuildFirmware/Default4M/$(1),$(1),sl-r7205,SL-R7205)
 
 Image/Build/Profile/V22RW-2X2=$(call BuildFirmware/Default4M/$(1),$(1),v22rw-2x2,V22RW-2X2)
@@ -551,6 +563,7 @@ define Image/Build/Profile/Default
        $(call Image/Build/Profile/ARGUS_ATP52B,$(1))
        $(call Image/Build/Profile/ASL26555,$(1))
        $(call Image/Build/Profile/AWM002EVB,$(1))
+       $(call Image/Build/Profile/AWAPN2403,$(1))
        $(call Image/Build/Profile/BC2,$(1))
        $(call Image/Build/Profile/BROADWAY,$(1))
        $(call Image/Build/Profile/CARAMBOLA,$(1))
@@ -591,6 +604,7 @@ define Image/Build/Profile/Default
        $(call Image/Build/Profile/RTG32B1,$(1))
        $(call Image/Build/Profile/RTN10PLUS,$(1))
        $(call Image/Build/Profile/RT-N13U,$(1))
+       $(call Image/Build/Profile/RUT5XX,$(1))
        $(call Image/Build/Profile/SL-R7205,$(1))
        $(call Image/Build/Profile/UR-326N4G,$(1))
        $(call Image/Build/Profile/V22RW-2X2,$(1))
@@ -644,12 +658,20 @@ define BuildFirmware/EdimaxCombined/squashfs
                -s $(6) -m $(7) -f $(8) -S $(9)
 endef
 
+Image/Build/Profile/CYSWR1100=$(call BuildFirmware/Seama/$(1),$(1),cy-swr1100,CY-SWR1100,wrgnd10_samsung_ss815,$(ralink_default_fw_size_8M))
+
 Image/Build/Profile/DIR645=$(call BuildFirmware/Seama/$(1),$(1),dir-645,DIR-645,wrgn39_dlob.hans_dir645,$(ralink_default_fw_size_8M))
 
 omniembhpm_mtd_size=16449536
 Image/Build/Profile/OMNIEMBHPM=$(call BuildFirmware/CustomFlash/$(1),$(1),omni-emb-hpm,OMNI-EMB-HPM,$(omniembhpm_mtd_size))
 
-Image/Build/Profile/RTN56U=$(call BuildFirmware/Default8M/$(1),$(1),rt-n56u,RTN56U)
+define BuildFirmware/RTN56U/squashfs
+       $(call BuildFirmware/Default8M/$(1),$(1),rt-n56u,RTN56U)
+       -mkrtn56uimg -s $(call sysupname,$(1),rt-n56u)
+       -cp $(call sysupname,$(1),rt-n56u) $(call imgname,$(1),rt-n56u)-factory.bin
+       -mkrtn56uimg -f $(call imgname,$(1),rt-n56u)-factory.bin
+endef
+Image/Build/Profile/RTN56U=$(call BuildFirmware/RTN56U/$(1),$(1),rt-n56u,RTN56U)
 
 Image/Build/Profile/TEW691GR=$(call BuildFirmware/UMedia/$(1),$(1),tew-691gr,TEW-691GR,0x026910)
 
@@ -661,6 +683,7 @@ Image/Build/Profile/BR6475ND=$(call BuildFirmware/EdimaxCombined/$(1),$(1),br-64
 
 ifeq ($(SUBTARGET),rt3883)
 define Image/Build/Profile/Default
+       $(call Image/Build/Profile/CYSWR1100,$(1))
        $(call Image/Build/Profile/DIR645,$(1))
        $(call Image/Build/Profile/OMNIEMBHPM,$(1))
        $(call Image/Build/Profile/RTN56U,$(1))