define MkImage
$(eval imagename=$(if $(4),$(4),MIPS OpenWrt Linux-$(LINUX_VERSION)))
- mkimage -A mips -O linux -T kernel -C $(1) $(call kernel_entry)\
+ -mkimage -A mips -O linux -T kernel -C $(1) $(call kernel_entry)\
-n "$(imagename)" \
-d $(2) $(3)
endef
define MkCombineduImage
$(call PatchKernelLzma,$(2),$(3))
if [ `stat -c%s "$(KDIR)/vmlinux-$(2).bin.lzma"` -gt `expr $(4) - 64` ]; then \
- echo "Warning: $(KDIR)/vmlinux-$(2).bin.lzma is too big"; \
+ echo "Warning: $(KDIR)/vmlinux-$(2).bin.lzma is too big" >&2; \
else if [ `stat -c%s "$(KDIR)/root.$(1)"` -gt $(5) ]; then \
- echo "Warning: $(KDIR)/root.$(1) is too big"; \
+ echo "Warning: $(KDIR)/root.$(1) is too big" >&2; \
else \
( dd if=$(KDIR)/vmlinux-$(2).bin.lzma bs=`expr $(4) - 64` conv=sync ; dd if=$(KDIR)/root.$(1) ) > $(KDIR)/vmlinux-$(2).bin.lzma.combined ; \
fi ; fi
define CatFiles
if [ `stat -c%s "$(1)"` -gt $(2) ]; then \
- echo "Warning: $(1) is too big"; \
+ echo "Warning: $(1) is too big" >&2; \
else if [ `stat -c%s $(3)` -gt $(4) ]; then \
- echo "Warning: $(3) is too big"; \
+ echo "Warning: $(3) is too big" >&2; \
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)))
+ $(eval output_name=$(if $(5),$(call imgname,$(1),$(2))-$(5),$(call sysupname,$(1),$(2))))
+ $(call CatFiles,$(KDIR)/vmlinux-$(2).uImage,$(3),$(KDIR)/root.$(1),$(4),$(output_name))
endef
define mkmtd
define BuildFirmware/Generic
$(call MkImageLzma,$(2),$(3),$(6))
- $(call Sysupgrade/KRuImage,$(1),$(2),$(4),$(5))
+ $(call Sysupgrade/KRuImage,$(1),$(2),$(4),$(5),$(7))
endef
define BuildFirmware/Generic/initramfs
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)
+ $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_4M)),917504,2949120,$(7),$(8))
endef
define BuildFirmware/GENERIC_4M/initramfs
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))
+ $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_8M)),$(kernel_size_8M),$(rootfs_size_8M),$(7),$(8))
endef
define BuildFirmware/GENERIC_8M/initramfs
mtd_broadway_kernel_part_size=1048576
mtd_broadway_rootfs_part_size=6881280
define BuildFirmware/BROADWAY
+ $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_broadway)),$(mtd_broadway_kernel_part_size),$(mtd_broadway_rootfs_part_size),Broadway Kernel Image,factory.bin)
$(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_broadway)),$(mtd_broadway_kernel_part_size),$(mtd_broadway_rootfs_part_size))
- mkimage -A mips -O linux -T kernel -C lzma $(call kernel_entry)\
- -n 'Broadway Kernel Image' \
- -d $(KDIR)/vmlinux-$(2).bin.lzma $(KDIR)/vmlinux-$(2).uImage
- $(call CatFiles,$(KDIR)/vmlinux-$(2).uImage,$(mtd_broadway_kernel_part_size),$(KDIR)/root.$(1),$(mtd_broadway_rootfs_part_size),$(call imgname,$(1),$(2))-factory.bin)
endef
define BuildFirmware/BROADWAY/initramfs
rootfs_size_nw718=2883584
cmdline_nw718=$(call mkcmdline,NW718,ttyS1,57600) $(call mkmtd/spi,$(mtdlayout_nw718))
define BuildFirmware/NW718
+ $(call BuildFirmware/Generic,$(1),$(2),$(cmdline_nw718),$(kernel_size_nw718),$(rootfs_size_nw718),ARA1B4NCRNW718;1,factory.bin)
$(call BuildFirmware/Generic,$(1),$(2),$(cmdline_nw718),$(kernel_size_nw718),$(rootfs_size_nw718))
- $(call PatchKernelLzma,$(2),$(cmdline_nw718))
- mkimage -A mips -O linux -T kernel -C lzma $(call kernel_entry) \
- -n "ARA1B4NCRNW718;1" \
- -d "$(KDIR)/vmlinux-$(2).bin.lzma" \
- "$(KDIR)/vmlinux-$(2).uImage"
- $(call CatFiles,$(KDIR)/vmlinux-$(2).uImage,$(kernel_size_nw718),$(KDIR)/root.$(1),$(rootfs_size_nw718),$(call imgname,$(1),$(2))-factory.bin)
+endef
+
+mtdlayout_omniembhpm=192k(u-boot)ro,64k(config)ro,64k(factory)ro,1024k(kernel),15040k(rootfs),16064k@0x50000(firmware)
+kernel_size_omniembhpm=1048576
+rootfs_size_omniembhpm=15400960
+define BuildFirmware/OMNIEMBHPM
+ $(call BuildFirmware/Generic,$(1),$(2),$(call mkcmdline,$(3),ttyS1,115200) $(call mkmtd/spi,$(mtdlayout_omniembhpm)),$(kernel_size_omniembhpm),$(rootfs_size_omniembhpm))
+endef
+
+define BuildFirmware/OMNIEMBHPM/initramfs
+ $(call BuildFirmware/Generic/initramfs,$(1),$(2),$(call mkcmdline,$(3),ttyS1,115200) $(call mkmtd/spi,$(mtdlayout_omniembhpm)))
endef
mtdlayout_rtg32b1=192k(u-boot)ro,64k(devdata)ro,64k(devconf)ro,896k(kernel),2880k(rootfs),3776k@0x50000(firmware)
define BuildFirmware/Seama
$(call PatchKernelLzma,$(2),$(3))
if [ `stat -c%s "$(KDIR)/vmlinux-$(2).bin.lzma"` -gt $(4) ]; then \
- echo "Warning: $(KDIR)/vmlinux-$(2).bin.lzma is too big"; \
+ echo "Warning: $(KDIR)/vmlinux-$(2).bin.lzma is too big" >&2; \
else if [ `stat -c%s $(KDIR)/root.$(1)` -gt $(5) ]; then \
- echo "Warning: $(KDIR)/root.$(1) is too big"; \
+ echo "Warning: $(KDIR)/root.$(1) is too big" >&2; \
else \
( \
dd if=$(KDIR)/vmlinux-$(2).bin.lzma bs=$(4) count=1 conv=sync; \
$(call BuildFirmware/GENERIC_8M/initramfs,$(1),$(2),$(3),ttyS1,57600,phys)
endef
-define BuildFirmware/W306R_4M
- $(call BuildFirmware/w306r,$(1),$(2),$(call mkcmdline,$(3),$(4),$(5)) $(call mkmtd/$(6),$(mtdlayout_4M)),917504,2949120)
-endef
-
-define BuildFirmware/w306r
- $(call PatchKernelLzma,$(2),$(3))
- mkimage -A mips -O linux -T kernel -C lzma $(call kernel_entry)\
- -n 'linkn Kernel Image' \
- -d $(KDIR)/vmlinux-$(2).bin.lzma $(KDIR)/vmlinux-$(2).uImage
- $(call CatFiles,$(KDIR)/vmlinux-$(2).uImage,$(4),$(KDIR)/root.$(1),$(5),$(call imgname,$(1),$(2))-factory.bin)
-endef
-
mtdlayout_whrg300n=192k(u-boot)ro,64k(u-boot-env)ro,64k(factory)ro,960k(kernel),2752k(rootfs),64k(user)ro,3712k@0x50000(firmware)
define BuildFirmware/WHRG300N
$(call Image/Build/Template/GENERIC_4M,$(1),whr-g300n,WHR-G300N,ttyS1,57600,phys)
$(call Image/Build/Template/$(fs_squash)/$(1),3G6200N,3g-6200n,3G-6200N,ttyS1,57600,phys)
endef
+define Image/Build/Profile/3G300M
+ $(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,3g300m,3G300M,ttyS1,57600,spi,3G150M_SPI Kernel Image,factory.bin)
+ $(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,3g300m,3G300M,ttyS1,57600,spi)
+endef
+
define Image/Build/Profile/AIR3GII
$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,air3gii,AIR3GII,ttyS1,57600,spi)
endef
endef
define Image/Build/Profile/W306R_V20
+ $(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,w306r-v20,W306R_V20,ttyS1,57600,phys,linkn Kernel Image,factory.bin)
$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,w306r-v20,W306R_V20,ttyS1,57600,phys)
- $(call Image/Build/Template/$(fs_squash)/$(1),W306R_4M,w306r-v20,W306R_V20,ttyS1,57600,phys)
endef
define Image/Build/Profile/W502U
$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_8M,wr512-3gn-8M,WR512-3GN,ttyS1,57600,phys)
endef
+define Image/Build/Profile/UPVEL_326
+ $(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_4M,ur-326n4g,UR-326N4G,ttyS1,57600,phys)
+endef
define Image/Build/Profile/UPVEL
$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_8M,ur-336un,UR-336UN,ttyS1,57600,phys)
ifeq ($(CONFIG_RALINK_RT305X),y)
define Image/Build/Profile/Default
$(call Image/Build/Profile/3G6200N,$(1))
+ $(call Image/Build/Profile/3G300M,$(1))
$(call Image/Build/Profile/AIR3GII,$(1))
$(call Image/Build/Profile/ALL02393G,$(1))
$(call Image/Build/Profile/ALL0256N,$(1))
$(call Image/Build/Profile/NBG419N,$(1))
$(call Image/Build/Profile/NW718,$(1))
$(call Image/Build/Profile/OMNIEMB,$(1))
+ $(call Image/Build/Profile/UPVEL_326,$(1))
$(call Image/Build/Profile/PSR680W,$(1))
$(call Image/Build/Profile/PWH2004,$(1))
$(call Image/Build/Profile/RTG32B1,$(1))
$(call Image/Build/Template/$(fs_squash)/$(1),DIR645,dir-645,DIR-645,ttyS1,57600,spi,wrgn39_dlob.hans_dir645)
endef
+define Image/Build/Profile/OMNIEMBHPM
+ $(call Image/Build/Template/$(fs_squash)/$(1),OMNIEMBHPM,omni-emb-hpm,OMNI-EMB-HPM)
+endef
+
define Image/Build/Profile/RTN56U
$(call Image/Build/Template/$(fs_squash)/$(1),GENERIC_8M,rt-n56u,RT-N56U,ttyS1,57600,phys)
endef
ifeq ($(CONFIG_RALINK_RT3883),y)
define Image/Build/Profile/Default
$(call Image/Build/Profile/DIR645,$(1))
+ $(call Image/Build/Profile/OMNIEMBHPM,$(1))
$(call Image/Build/Profile/RTN56U,$(1))
$(call Image/Build/Profile/TEW691GR,$(1))
$(call Image/Build/Profile/TEW692GR,$(1))