-define CatFiles
- if [ `stat -c%s "$(1)"` -gt $(2) ]; then \
- echo "Warning: $(1) is too big"; \
- else if [ `stat -c%s $(3)` -gt $(4) ]; then \
- echo "Warning: $(3) is too big"; \
- else \
- ( dd if=$(1) bs=$(2) conv=sync; dd if=$(3) ) > $(5); \
- fi; fi
-endef
-
-define Sysupgrade/KRuImage
- $(call CatFiles,$(KDIR)/vmlinux-$(2).uImage,$(3),$(KDIR)/root.$(1),$(4),$(call sysupname,$(1),$(2)))
-endef
-
-define mkmtd
-mtdparts=$(1):$(2)
-endef
-
-define mkmtd/phys
-$(call mkmtd,physmap-flash.0,$(1))
-endef
-
-define mkmtd/spi
-$(call mkmtd,spi0.0,$(1))
-endef
-
-define Image/BuildKernel
- cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(VMLINUX).elf
- cp $(KDIR)/vmlinux $(BIN_DIR)/$(VMLINUX).bin
- $(call CompressLzma,$(KDIR)/vmlinux,$(KDIR)/vmlinux.bin.lzma)
- $(call MkImage,lzma,$(KDIR)/vmlinux.bin.lzma,$(KDIR)/uImage.lzma)
- cp $(KDIR)/uImage.lzma $(BIN_DIR)/$(UIMAGE).bin
- $(call Image/Build/Initramfs)
-endef
-
-define BuildFirmware/Generic
- $(call MkImageLzma,$(2),$(3),$(6))
- $(call Sysupgrade/KRuImage,$(1),$(2),$(4),$(5))
-endef
-
-define BuildFirmware/Generic/initramfs
- $(call MkImageLzma,$(2),$(3))
- $(CP) $(KDIR)/vmlinux-$(2).uImage $(call imgname,$(1),$(2))-uImage.bin
-endef
-
-mtdlayout_4M=192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,896k(kernel),2880k(rootfs),3776k@0x50000(firmware)
-define BuildFirmware/GENERIC_4M
- $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_4M)),917504,2949120)
-endef
-
-define BuildFirmware/GENERIC_4M/initramfs
- $(call BuildFirmware/Generic/initramfs,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_4M)))
-endef
-
-mtdlayout_8M=192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,896k(kernel),6976k(rootfs),7872k@0x50000(firmware)
-kernel_size_8M=917504
-rootfs_size_8M=7143424
-define BuildFirmware/GENERIC_8M
- $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_8M)),$(kernel_size_8M),$(rootfs_size_8M))
-endef
-
-define BuildFirmware/GENERIC_8M/initramfs
- $(call BuildFirmware/Generic/initramfs,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_8M)))
-endef
-
-define BuildFirmware/UIMAGE_8M
- $(call MkCombineduImage,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_8M)),$(kernel_size_8M),$(rootfs_size_8M),$(7))
-endef
-
-mtdlayout_edimax_3g6200n=192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,896k(kernel),2752k(rootfs),128k@0x3e0000(cimage)ro,3648k@0x50000(firmware)
-define BuildFirmware/3G6200N
- $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_edimax_3g6200n)),917504,2818048)
-endef
-
-mtdlayout_allnet_all5002=192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,1024k(kernel),31424k(rootfs),32448k@0x50000(firmware)
-define BuildFirmware/ALL5002
- $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_allnet_all5002)),1048576,32178176)
-endef
-
-define BuildFirmware/ALL5002/initramfs
- $(call BuildFirmware/Generic/initramfs,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_allnet_all5002)))
-endef