ar71xx: add support for gl-mifi
[openwrt/openwrt.git] / target / linux / ar71xx / image / generic.mk
index 3e3dc69d7561baf0aa6b2971796cefcb6e991813..6e5ef2b68b75b19fb5c48c389823ea8997f7b1d0 100644 (file)
@@ -57,6 +57,16 @@ define Device/gl-ar300
 endef
 TARGET_DEVICES += gl-ar300
 
+define Device/gl-ar300m
+  DEVICE_TITLE := GL AR300M
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 uboot-envtools
+  BOARDNAME = GL-AR300M
+  IMAGE_SIZE = 16000k
+  CONSOLE = ttyS0,115200
+  MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
+endef
+TARGET_DEVICES += gl-ar300m
+
 define Device/gl-domino
   DEVICE_TITLE := GL Domino Pi
   DEVICE_PACKAGES := kmod-usb-core kmod-usb2
@@ -67,6 +77,25 @@ define Device/gl-domino
 endef
 TARGET_DEVICES += gl-domino
 
+define Device/gl-mifi
+  DEVICE_TITLE := GL MIFI
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2
+  BOARDNAME = GL-MIFI
+  IMAGE_SIZE = 16000k
+  CONSOLE = ttyATH0,115200
+  MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
+endef
+TARGET_DEVICES += gl-mifi
+
+define Device/dr531
+  DEVICE_TITLE := Wallys DR531
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2
+  BOARDNAME = DR531
+  IMAGE_SIZE = 7808k
+  MTDPARTS = spi0.0:192k(u-boot)ro,64k(u-boot-env),64k(partition-table)ro,7808k(firmware),64k(art)ro
+endef
+TARGET_DEVICES += dr531
+
 define Device/wndr3700
   DEVICE_TITLE := NETGEAR WNDR3700
   DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-ledtrig-usbdev kmod-leds-wndr3700-usb
@@ -133,7 +162,7 @@ endef
 TARGET_DEVICES += cap324
 
 define Device/cap324-nocloud
-  DEVICE_TITLE := PowerCloud CAP324 Cloud AP
+  DEVICE_TITLE := PowerCloud CAP324 Cloud AP (No-Cloud)
   DEVICE_PACKAGES := uboot-envtools
   BOARDNAME := CAP324
   DEVICE_PROFILE := CAP324
@@ -259,6 +288,15 @@ define Device/gl-inet-6416A-v1
 endef
 TARGET_DEVICES += gl-inet-6408A-v1 gl-inet-6416A-v1
 
+define Device/jwap230
+  DEVICE_TITLE := jjPlus JWAP230
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2
+  BOARDNAME = JWAP230
+  IMAGE_SIZE = 16000k
+  MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
+endef
+TARGET_DEVICES += jwap230
+
 define Device/rnx-n360rt
   $(Device/tplink-4m)
   DEVICE_TITLE := Rosewill RNX-N360RT
@@ -272,7 +310,7 @@ TARGET_DEVICES += rnx-n360rt
 define Device/mc-mac1200r
   $(Device/tplink-8mlzma)
   DEVICE_TITLE := MERCURY MAC1200R
-  DEVICE_PACKAGES := kmod-ath10k
+  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
   BOARDNAME := MC-MAC1200R
   DEVICE_PROFILE := MAC1200R
   TPLINK_HWID := 0x12000001
@@ -364,7 +402,7 @@ TARGET_DEVICES += oolite
 
 define Device/NBG6616
   DEVICE_TITLE := ZyXEL NBG6616
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-usb-storage kmod-rtc-pcf8563 kmod-ath10k
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-usb-storage kmod-rtc-pcf8563 kmod-ath10k ath10k-firmware-qca988x
   BOARDNAME = NBG6616
   KERNEL_SIZE = 2048k
   IMAGE_SIZE = 15323k
@@ -432,3 +470,85 @@ define Device/hiwifi-hc6361
   MTDPARTS := spi0.0:64k(u-boot)ro,64k(bdinfo)ro,16128k(firmware),64k(backup)ro,64k(art)ro
 endef
 TARGET_DEVICES += hiwifi-hc6361
+
+
+# The pre-filled 64 bytes consist of
+# - 28 bytes seama_header
+# - 36 bytes of META data (4-bytes aligned)
+define Build/seama-factory
+       ( dd if=/dev/zero bs=64 count=1; cat $(word 1,$^) ) >$@.loader.tmp
+       ( dd if=$@.loader.tmp bs=64k conv=sync; dd if=$(word 2,$^) ) >$@.tmp.0
+       tail -c +65 $@.tmp.0 >$@.tmp.1
+       $(STAGING_DIR_HOST)/bin/seama \
+               -i $@.tmp.1 \
+               -m "dev=/dev/mtdblock/1" -m "type=firmware"
+       $(STAGING_DIR_HOST)/bin/seama \
+               -s $@ \
+               -m "signature=$(1)" \
+               -i $@.tmp.1.seama
+       rm -f $@.loader.tmp $@.tmp.*
+endef
+
+define Build/seama-sysupgrade
+       $(STAGING_DIR_HOST)/bin/seama \
+               -i $(word 1,$^) \
+               -m "dev=/dev/mtdblock/1" -m "type=firmware"
+       ( dd if=$(word 1,$^).seama bs=64k conv=sync; dd if=$(word 2,$^) ) >$@
+       rm -f $(word 1,$^).seama
+endef
+
+define Build/seama-initramfs
+       $(STAGING_DIR_HOST)/bin/seama \
+               -i $@ \
+               -m "dev=/dev/mtdblock/1" -m "type=firmware"
+       mv $@.seama $@
+endef
+
+define Build/seama-pad-rootfs
+       $(STAGING_DIR_HOST)/bin/padjffs2 $(word 2,$^) -c 64 >>$@
+endef
+
+define Device/seama
+  CONSOLE := ttyS0,115200
+  LOADER_TYPE := bin
+  KERNEL := kernel-bin | lzma | loader-kernel-cmdline | lzma
+  KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | seama-initramfs
+  KERNEL_INITRAMFS_SUFFIX = $$(KERNEL_SUFFIX).seama
+  IMAGES := sysupgrade.bin factory.bin
+  IMAGE/sysupgrade.bin := seama-sysupgrade $$$$(SEAMA_SIGNATURE) | seama-pad-rootfs | check-size $$$$(IMAGE_SIZE)
+  IMAGE/factory.bin := seama-factory $$$$(SEAMA_SIGNATURE) | seama-pad-rootfs | check-size $$$$(IMAGE_SIZE)
+  SEAMA_SIGNATURE :=
+  DEVICE_VARS += SEAMA_SIGNATURE
+endef
+
+define Device/mynet-n600
+$(Device/seama)
+  DEVICE_TITLE := Western Digital My Net N600
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2
+  BOARDNAME = MYNET-N600
+  IMAGE_SIZE = 15808k
+  MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
+  SEAMA_SIGNATURE := wrgnd16_wd_db600
+endef
+
+define Device/mynet-n750
+$(Device/seama)
+  DEVICE_TITLE := Western Digital My Net N750
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2
+  BOARDNAME = MYNET-N750
+  IMAGE_SIZE = 15808k
+  MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
+  SEAMA_SIGNATURE := wrgnd13_wd_av
+endef
+
+define Device/qihoo-c301
+$(Device/seama)
+  DEVICE_TITLE := Qihoo C301
+  DEVICE_PACKAGES :=  kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
+  BOARDNAME = QIHOO-C301
+  IMAGE_SIZE = 15744k
+  MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),64k(devdata),64k(devconf),15744k(firmware),64k(warm_start),64k(action_image_config),64k(radiocfg)ro;spi0.1:15360k(upgrade2),1024k(privatedata)
+  SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
+endef
+
+TARGET_DEVICES += mynet-n600 mynet-n750 qihoo-c301