+
+define BuildFirmware/Buffalo2
+ $(call BuildFirmware/Generic,$(1),$(2),board=$(3) $(4),$(5),$(6))
+endef
+
+mtdlayout_dir300b1=192k(u-boot)ro,64k(devdata)ro,64k(devconf)ro,896k(kernel),2880k(rootfs),3776k@0x50000(firmware)
+mtd_dir300b1_kernel_part_size=917504
+mtd_dir300b1_rootfs_part_size=2949120
+define BuildFirmware/DIR300B1
+ $(call BuildFirmware/Generic,$(1),$(2),board=$(3) $(call mkmtd/phys,$(mtdlayout_dir300b1)),$(mtd_dir300b1_kernel_part_size),$(mtd_dir300b1_rootfs_part_size))
+ mkwrgimg -s $(4) -d /dev/mtdblock/2 \
+ -i $(call sysupname,$(1),$(2)) \
+ -o $(call imgname,$(1),$(2))-factory.bin
+endef
+
+define BuildFirmware/Edimax
+ mkedimaximg -i $(call sysupname,$(1),$(2)) \
+ -o $(call imgname,$(1),$(2))-factory.bin \
+ -s $(3) -m $(4) -f $(5) -S $(6)
+endef
+
+mtdlayout_f5d8235=320k(u-boot)ro,1536k(kernel),6208k(rootfs),64k(nvram),64k(factory),7744k@0x50000(firmware)
+mtd_f5d8235_kernel_part_size=1572864
+mtd_f5d8235_rootfs_part_size=6356992
+define BuildFirmware/F5D8235
+ $(call BuildFirmware/Generic,$(1),$(2),board=$(3) $(call mkmtd/phys,$(mtdlayout_f5d8235)),$(mtd_f5d8235_kernel_part_size),$(mtd_f5d8235_rootfs_part_size))
+endef
+
+define BuildFirmware/FONERA20N
+ $(call Image/Build/Template/GENERIC_8M,$(1),fonera20n,FONERA20N,ttyS1,57600,phys)
+ $(call BuildFirmware/Edimax,$(1),fonera20n,RSDK,NL1T,0x50000,0xc0000)
+endef
+
+mtdlayout_nw718=192k(u-boot)ro,128k(config)ro,64k(factory)ro,832k(kernel),2880k(rootfs),3712k@0x60000(firmware)
+kernel_size_nw718=851968
+rootfs_size_nw718=2949120
+cmdline_nw718=$(call mkcmdline,NW718,ttyS1,57600) $(call mkmtd/spi,$(mtdlayout_nw718))