ramips: add support for D-Link DWR-116-A1/2
[openwrt/openwrt.git] / target / linux / ramips / image / rt3883.mk
index 2fd847b8168431ca15b07970d8fc6377840b2ccb..f90fc6154fdae04f96d6faf832dbc3a7c62f375e 100644 (file)
 #
 # RT3662/RT3883 Profiles
 #
+define Build/mkrtn56uimg
+       $(STAGING_DIR_HOST)/bin/mkrtn56uimg $(1) $@
+endef
 
-define Device/tew-691gr
-  DTS := TEW-691GR
-  IMAGES += factory.bin
-  IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | umedia-header 0x026910
-  DEVICE_TITLE := TRENDnet TEW-691GR
+define Device/br-6475nd
+  DTS := BR-6475ND
+  BLOCKSIZE := 64k
+  IMAGE_SIZE := 7744k
+  IMAGE/sysupgrade.bin := append-kernel | append-rootfs | \
+       edimax-header -s CSYS -m RN54 -f 0x70000 -S 0x01100000 | pad-rootfs | \
+       append-metadata | check-size $$$$(IMAGE_SIZE)
+  DEVICE_TITLE := Edimax BR-6475nD
   DEVICE_PACKAGES := swconfig
 endef
-TARGET_DEVICES += tew-691gr
-
+TARGET_DEVICES += br-6475nd
 
-define Device/tew-692gr
-  DTS := TEW-692GR
+define Device/cy-swr1100
+  DTS := CY-SWR1100
+  BLOCKSIZE := 64k
+  KERNEL := $(KERNEL_DTB)
   IMAGES += factory.bin
-  IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | umedia-header 0x026920
-  DEVICE_TITLE := TRENDnet TEW-692GR
-  DEVICE_PACKAGES := swconfig
+  IMAGE/sysupgrade.bin := \
+       append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
+       seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
+       pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
+  IMAGE/factory.bin := \
+       append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
+       append-rootfs | pad-rootfs -x 64 | \
+       seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
+       seama-seal -m "signature=wrgnd10_samsung_ss815" | \
+       check-size $$$$(IMAGE_SIZE)
+  DEVICE_TITLE := Samsung CY-SWR1100
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 swconfig
 endef
-TARGET_DEVICES += tew-692gr
-
+TARGET_DEVICES += cy-swr1100
 
-# $(1) = squashfs/initramfs
-# $(2) = lowercase board name
-# $(3) = dts file
-# $(4) = kernel size
-# $(5) = rootfs size
-# $(6) = signature
-# $(7) = model
-# $(8) = flash address
-# $(9) = start address
-define BuildFirmware/EdimaxCombined/squashfs
-       $(call PatchKernelLzmaDtb,$(2),$(3))
-       $(call MkImage,lzma,$(KDIR)/vmlinux-$(2).bin.lzma,$(KDIR)/vmlinux-$(2).bin.uImage)
-       if [ `stat -c%s "$(KDIR)/vmlinux-$(2).bin.uImage"` -gt `expr $(4) - 20` ]; then \
-               echo "Warning: $(KDIR)/vmlinux-$(2).bin.uImage is too big" >&2; \
-               exit 1; \
-       else if [ `stat -c%s "$(KDIR)/root.$(1)"` -gt $(5) ]; then \
-               echo "Warning: $(KDIR)/root.$(1) is too big" >&2; \
-               exit 1; \
-       else \
-               ( dd if=$(KDIR)/vmlinux-$(2).bin.uImage bs=`expr $(4) - 20` conv=sync ; dd if=$(KDIR)/root.$(1) ) > $(KDIR)/vmlinux-$(2).bin.uImage.combined ; \
-       fi ; fi
-       mkedimaximg -i "$(KDIR)/vmlinux-$(2).bin.uImage.combined" \
-               -o $(call imgname,$(1),$(2)).bin \
-               -s $(6) -m $(7) -f $(8) -S $(9)
-endef
 
-define BuildFirmware/RTN56U/squashfs
-       $(call BuildFirmware/Default8M/$(1),$(1),rt-n56u,RT-N56U)
-       -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
+define Device/dir-645
+  DTS := DIR-645
+  BLOCKSIZE := 4k
+  KERNEL := $(KERNEL_DTB)
+  IMAGES += factory.bin
+  IMAGE/sysupgrade.bin := \
+       append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs | \
+       seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
+       pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
+  IMAGE/factory.bin := \
+       append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
+       append-rootfs | pad-rootfs -x 64 | \
+       seama -m "dev=/dev/mtdblock/2" -m "type=firmware" | \
+       seama-seal -m "signature=wrgn39_dlob.hans_dir645" | \
+       check-size $$$$(IMAGE_SIZE)
+  DEVICE_TITLE := D-Link DIR-645
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 swconfig
 endef
+TARGET_DEVICES += dir-645
 
 
-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))
-hpm_mtd_size=16449536
-Image/Build/Profile/HPM=$(call BuildFirmware/CustomFlash/$(1),$(1),hpm,HPM,$(hpm_mtd_size))
-Image/Build/Profile/RTN56U=$(call BuildFirmware/RTN56U/$(1),$(1),rt-n56u,RT-N56U)
-kernel_size_BR6475ND:=2097152
-rootfs_size_BR6475ND:=5832704
-Image/Build/Profile/BR6475ND=$(call BuildFirmware/EdimaxCombined/$(1),$(1),br-6475nd,BR-6475ND,$(kernel_size_BR6475ND),$(rootfs_size_BR6475ND),CSYS,RN54,0x70000,0x01100000)
+define Device/hpm
+  DTS := HPM
+  BLOCKSIZE := 64k
+  IMAGE_SIZE := 16064k
+  DEVICE_TITLE := Omnima HPM
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2
+endef
+TARGET_DEVICES += hpm
 
 
-define LegacyDevice/CYSWR1100
-  DEVICE_TITLE := Samsung CY-SWR1100
+define Device/rt-n56u
+  DTS := RT-N56U
+  BLOCKSIZE := 64k
+  IMAGE/sysupgrade.bin += | mkrtn56uimg -s
+  DEVICE_TITLE := Asus RT-N56U
   DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 swconfig
 endef
-LEGACY_DEVICES += CYSWR1100
+TARGET_DEVICES += rt-n56u
 
 
-define LegacyDevice/DIR645
-  DEVICE_TITLE := D-Link DIR-645
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 swconfig
+define Device/tew-691gr
+  DTS := TEW-691GR
+  BLOCKSIZE := 64k
+  IMAGES += factory.bin
+  IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
+       umedia-header 0x026910
+  DEVICE_TITLE := TRENDnet TEW-691GR
+  DEVICE_PACKAGES := swconfig
 endef
-LEGACY_DEVICES += DIR645
+TARGET_DEVICES += tew-691gr
 
 
-define LegacyDevice/HPM
-  DEVICE_TITLE := Omnima HPM
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2
+define Device/tew-692gr
+  DTS := TEW-692GR
+  BLOCKSIZE := 64k
+  IMAGES += factory.bin
+  IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
+       umedia-header 0x026920
+  DEVICE_TITLE := TRENDnet TEW-692GR
+  DEVICE_PACKAGES := swconfig
 endef
-LEGACY_DEVICES += HPM
+TARGET_DEVICES += tew-692gr
 
 
-define LegacyDevice/RTN56U
-  DEVICE_TITLE := Asus RT-N56U
+define Device/wlr-6000
+  DTS := WLR-6000
+  BLOCKSIZE := 4k
+  IMAGE_SIZE := 7244k
+  IMAGES += factory.dlf
+  IMAGE/factory.dlf := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \
+       senao-header -r 0x0202 -p 0x41 -t 2
+  DEVICE_TITLE := Sitecom WLR-6000
   DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 swconfig
 endef
-LEGACY_DEVICES += RTN56U
+TARGET_DEVICES += wlr-6000
 
 
-define LegacyDevice/BR6475ND
-  DEVICE_TITLE := Edimax BR-6475nD
-  DEVICE_PACKAGES := swconfig
+define Device/wmdr-143n
+  DTS := WMDR-143N
+  BLOCKSIZE := 64k
+  DEVICE_TITLE := Loewe WMDR-143N
 endef
-LEGACY_DEVICES += BR6475ND
+TARGET_DEVICES += wmdr-143n