ar71xx: sync seama image build code with ramips
[openwrt/staging/lynxis.git] / target / linux / ar71xx / image / generic.mk
index d9da3be78279dd3564f921a15d9315ee85108c80..9f5e755cfe88b165ef7ed5080a7e64b2003a2ec8 100644 (file)
@@ -1,4 +1,5 @@
-DEVICE_VARS += DAP_SIGNATURE NETGEAR_BOARD_ID NETGEAR_HW_ID NETGEAR_KERNEL_MAGIC ROOTFS_SIZE SEAMA_SIGNATURE
+DEVICE_VARS += DAP_SIGNATURE NETGEAR_BOARD_ID NETGEAR_HW_ID NETGEAR_KERNEL_MAGIC ROOTFS_SIZE
+DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
 
 define Build/alfa-network-rootfs-header
        mkimage \
@@ -12,10 +13,6 @@ define Build/append-md5sum-bin
                xargs echo -ne >> $@
 endef
 
-define Build/append-string
-       echo -n $(1) >> $@
-endef
-
 define Build/mkwrggimg
        $(STAGING_DIR_HOST)/bin/mkwrggimg -b \
                -i $@ -o $@.imghdr -d /dev/mtdblock/1 \
@@ -71,12 +68,14 @@ define Build/relocate-kernel
 endef
 
 define Build/seama
-       $(STAGING_DIR_HOST)/bin/seama -i $@ $(if $(1),$(1),-m "dev=/dev/mtdblock/1" -m "type=firmware")
+       $(STAGING_DIR_HOST)/bin/seama -i $@ \
+               -m "dev=/dev/mtdblock/$(SEAMA_MTDBLOCK)" -m "type=firmware"
        mv $@.seama $@
 endef
 
 define Build/seama-seal
-       $(call Build/seama,-s $@.seama $(1))
+       $(STAGING_DIR_HOST)/bin/seama -i $@ -s $@.seama \
+               -m "signature=$(SEAMA_SIGNATURE)"
 endef
 
 define Build/teltonika-fw-fake-checksum
@@ -148,7 +147,6 @@ define Device/ap91-5g
   IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs |\
        pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
 endef
-TARGET_DEVICES += ap91-5g
 
 define Device/arduino-yun
   DEVICE_TITLE := Arduino Yun
@@ -199,7 +197,7 @@ TARGET_DEVICES += cf-e320n-v2
 
 define Device/cf-e355ac-v1
   DEVICE_TITLE := COMFAST CF-E355AC v1
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x \
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct \
        -swconfig -uboot-envtools
   BOARDNAME := CF-E355AC-V1
   IMAGE_SIZE := 16192k
@@ -210,7 +208,7 @@ TARGET_DEVICES += cf-e355ac-v1
 define Device/cf-e355ac-v2
   $(Device/cf-e355ac-v1)
   DEVICE_TITLE := COMFAST CF-E355AC v2
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca9888 \
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
        -swconfig -uboot-envtools
   BOARDNAME := CF-E355AC-V2
 endef
@@ -218,7 +216,7 @@ TARGET_DEVICES += cf-e355ac-v2
 
 define Device/cf-e375ac
   DEVICE_TITLE := COMFAST CF-E375AC
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca9888 \
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
        -uboot-envtools
   BOARDNAME := CF-E375AC
   IMAGE_SIZE := 16000k
@@ -228,7 +226,7 @@ TARGET_DEVICES += cf-e375ac
 
 define Device/cf-e380ac-v1
   DEVICE_TITLE := COMFAST CF-E380AC v1
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x \
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct \
        -swconfig -uboot-envtools
   BOARDNAME := CF-E380AC-V1
   IMAGE_SIZE := 16128k
@@ -247,7 +245,7 @@ TARGET_DEVICES += cf-e380ac-v2
 
 define Device/cf-e385ac
   DEVICE_TITLE := COMFAST CF-E385AC
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca9984 \
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9984-ct \
        -uboot-envtools
   BOARDNAME := CF-E385AC
   IMAGE_SIZE := 16000k
@@ -308,7 +306,7 @@ TARGET_DEVICES += dragino2
 
 define Device/e1700ac-v2-16M
   DEVICE_TITLE := Qxwlan E1700AC v2 (16MB flash)
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x kmod-usb-core \
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb-core \
        kmod-usb2 kmod-usb-ledtrig-usbport
   BOARDNAME := E1700AC-V2
   SUPPORTED_DEVICES := e1700ac-v2
@@ -366,7 +364,7 @@ TARGET_DEVICES += e600g-v2-8M
 
 define Device/e600gac-v2-16M
   DEVICE_TITLE := Qxwlan E600GAC v2 (16MB flash)
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca9887 kmod-usb-core \
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb-core \
        kmod-usb2 -swconfig
   BOARDNAME := E600GAC-V2
   SUPPORTED_DEVICES := e600gac-v2
@@ -403,6 +401,25 @@ define Device/e750a-v4-8M
 endef
 TARGET_DEVICES += e750a-v4-8M
 
+define Device/e750g-v8-16M
+  DEVICE_TITLE := Qxwlan E750G v8 (16MB flash)
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 -swconfig
+  BOARDNAME := E750G-V8
+  SUPPORTED_DEVICES := e750g-v8
+  IMAGE_SIZE := 15936k
+  MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),64k(pri-data)ro,64k(art),-(firmware)
+  IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
+       append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
+endef
+TARGET_DEVICES += e750g-v8-16M
+
+define Device/e750g-v8-8M
+  $(Device/e750g-v8-16M)
+  DEVICE_TITLE := Qxwlan E750G v8 (8MB flash)
+  IMAGE_SIZE := 7744k
+endef
+TARGET_DEVICES += e750g-v8-8M
+
 define Device/ew-balin
   DEVICE_TITLE := Embedded Wireless Balin Platform
   DEVICE_PACKAGES := kmod-usb-core kmod-usb-chipidea
@@ -480,7 +497,7 @@ TARGET_DEVICES += gl-ar300m
 
 define Device/gl-ar750
   DEVICE_TITLE := GL.iNet GL-AR750
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca9887 kmod-usb-core \
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb-core \
        kmod-usb2 kmod-usb-storage
   BOARDNAME := GL-AR750
   SUPPORTED_DEVICES := gl-ar750
@@ -493,7 +510,7 @@ TARGET_DEVICES += gl-ar750
 
 define Device/gl-ar750s
   DEVICE_TITLE := GL.iNet GL-AR750S
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca9887 kmod-usb-core \
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb-core \
        kmod-usb2 kmod-usb-storage
   BOARDNAME := GL-AR750S
   SUPPORTED_DEVICES := gl-ar750s
@@ -541,7 +558,7 @@ define Device/lan-turtle
   $(Device/tplink-16mlzma)
   DEVICE_TITLE := Hak5 LAN Turtle
   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage \
-       -kmod-ath9k -swconfig -uboot-envtools -wpad-mini
+       -kmod-ath9k -swconfig -uboot-envtools -wpad-basic
   BOARDNAME := LAN-TURTLE
   DEVICE_PROFILE := LANTURTLE
   TPLINK_HWID := 0x5348334c
@@ -676,22 +693,13 @@ endef
 TARGET_DEVICES += cap324
 
 define Device/cr3000
-  DEVICE_TITLE := PowerCloud CR3000 Cloud Router
-  BOARDNAME := CR3000
-  DEVICE_PROFILE := CR3000
-  IMAGE_SIZE := 7104k
-  MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)ro
-endef
-TARGET_DEVICES += cr3000
-
-define Device/cr3000-nocloud
-  DEVICE_TITLE := PowerCloud CR3000 (No-Cloud)
+  DEVICE_TITLE := PowerCloud Systems CR3000
   BOARDNAME := CR3000
   DEVICE_PROFILE := CR3000
   IMAGE_SIZE := 7808k
   MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7808k(firmware),64k(art)ro
 endef
-TARGET_DEVICES += cr3000-nocloud
+TARGET_DEVICES += cr3000
 
 define Device/cr5000
   DEVICE_TITLE := PowerCloud Systems CR5000
@@ -707,7 +715,7 @@ define Device/packet-squirrel
   $(Device/tplink-16mlzma)
   DEVICE_TITLE := Hak5 Packet Squirrel
   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 \
-       -kmod-ath9k -swconfig -uboot-envtools -wpad-mini
+       -kmod-ath9k -swconfig -uboot-envtools -wpad-basic
   BOARDNAME := PACKET-SQUIRREL
   DEVICE_PROFILE := PACKETSQUIRREL
   TPLINK_HWID := 0x5351524c
@@ -812,6 +820,15 @@ define Device/jwap230
 endef
 TARGET_DEVICES += jwap230
 
+define Device/koala
+  DEVICE_TITLE := OCEDO Koala
+  BOARDNAME := KOALA
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
+  IMAGE_SIZE := 7424k
+  MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),7424k(firmware),1536k(kernel2),5888k(rootfs2),1088k(data)ro,64k(id)ro,64k(art)ro
+endef
+TARGET_DEVICES += koala
+
 define Device/r36a
   DEVICE_TITLE := ALFA Network R36A
   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport -swconfig
@@ -858,7 +875,7 @@ TARGET_DEVICES += rut900
 define Device/mc-mac1200r
   $(Device/tplink-8mlzma)
   DEVICE_TITLE := Mercury MAC1200R
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
   BOARDNAME := MC-MAC1200R
   DEVICE_PROFILE := MAC1200R
   TPLINK_HWID := 0x12000001
@@ -877,6 +894,16 @@ define Device/minibox-v1
 endef
 TARGET_DEVICES += minibox-v1
 
+define Device/minibox-v3.2
+  $(Device/tplink-16mlzma)
+  DEVICE_TITLE := Gainstrong MiniBox V3.2
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k-ct ath10k-firmware-qca9887-ct -swconfig
+  BOARDNAME := MINIBOX-V3.2
+  DEVICE_PROFILE := MINIBOXV32
+  TPLINK_HWID := 0x3C00010C
+endef
+TARGET_DEVICES += minibox-v3.2
+
 define Device/oolite-v1
   $(Device/minibox-v1)
   DEVICE_TITLE := GainStrong Oolite V1.0
@@ -889,7 +916,7 @@ TARGET_DEVICES += oolite-v1
 define Device/oolite-v5.2
   $(Device/tplink-16mlzma)
   DEVICE_TITLE := GainStrong Oolite V5.2
-  DEVICE_PACKAGES := ath10k-firmware-qca9887 kmod-ath10k kmod-usb-core kmod-usb2
+  DEVICE_PACKAGES := ath10k-firmware-qca9887-ct kmod-ath10k-ct kmod-usb-core kmod-usb2
   BOARDNAME := OOLITE-V5-2
   DEVICE_PROFILE := OOLITEV52
   TPLINK_HWID := 0x3C00010B
@@ -984,7 +1011,7 @@ TARGET_DEVICES += som9331
 
 define Device/sr3200
   DEVICE_TITLE := YunCore SR3200
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
   BOARDNAME := SR3200
   IMAGE_SIZE := 16000k
   MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
@@ -994,7 +1021,7 @@ TARGET_DEVICES += sr3200
 define Device/xd3200
   $(Device/sr3200)
   DEVICE_TITLE := YunCore XD3200
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
   BOARDNAME := XD3200
 endef
 TARGET_DEVICES += xd3200
@@ -1047,14 +1074,18 @@ TARGET_DEVICES += n5q
 
 define Device/NBG6616
   DEVICE_TITLE := ZyXEL NBG6616
-  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb-storage kmod-rtc-pcf8563 kmod-ath10k ath10k-firmware-qca988x
+  DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb-storage kmod-rtc-pcf8563 kmod-ath10k-ct ath10k-firmware-qca988x-ct
   BOARDNAME := NBG6616
   KERNEL_SIZE := 2048k
   IMAGE_SIZE := 15323k
   MTDPARTS := spi0.0:192k(u-boot)ro,64k(env)ro,64k(RFdata)ro,384k(zyxel_rfsd),384k(romd),64k(header),2048k(kernel),13184k(rootfs),15232k@0x120000(firmware)
   CMDLINE += mem=128M
-  IMAGES := sysupgrade.bin
+  RAS_BOARD := NBG6616
+  RAS_ROOTFS_SIZE := 14464k
+  RAS_VERSION := "$(VERSION_DIST) $(REVISION)"
+  IMAGES := factory.bin sysupgrade.bin
   KERNEL := kernel-bin | patch-cmdline | lzma | uImage lzma | jffs2 boot/vmlinux.lzma.uImage
+  IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | pad-to 64k | check-size $$$$(IMAGE_SIZE) | zyxel-ras-image
   IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
   # We cannot currently build a factory image. It is the sysupgrade image
   # prefixed with a header (which is actually written into the MTD device).
@@ -1110,6 +1141,7 @@ define Device/seama
   KERNEL := kernel-bin | patch-cmdline | relocate-kernel | lzma
   KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | seama
   KERNEL_INITRAMFS_SUFFIX = $$(KERNEL_SUFFIX).seama
+  SEAMA_MTDBLOCK := 1
   IMAGES := sysupgrade.bin factory.bin
 
   # 64 bytes offset:
@@ -1121,15 +1153,14 @@ define Device/seama
        check-size $$$$(IMAGE_SIZE)
   IMAGE/factory.bin := \
        $$(IMAGE/default) | seama | pad-rootfs | \
-       seama-seal -m "signature=$$$$(SEAMA_SIGNATURE)" | \
-       check-size $$$$(IMAGE_SIZE)
+       seama-seal | check-size $$$$(IMAGE_SIZE)
   SEAMA_SIGNATURE :=
 endef
 
 define Device/dir-869-a1
   $(Device/seama)
   DEVICE_TITLE := D-Link DIR-869 rev. A1
-  DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
+  DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
   BOARDNAME := DIR-869-A1
   IMAGE_SIZE := 15872k
   MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
@@ -1166,7 +1197,7 @@ TARGET_DEVICES += mynet-n750
 define Device/qihoo-c301
   $(Device/seama)
   DEVICE_TITLE := Qihoo C301
-  DEVICE_PACKAGES :=  kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k ath10k-firmware-qca988x
+  DEVICE_PACKAGES :=  kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k-ct ath10k-firmware-qca988x-ct
   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)
@@ -1188,7 +1219,7 @@ TARGET_DEVICES += dap-1330-a1
 
 define Device/dap-2695-a1
   DEVICE_TITLE := D-Link DAP-2695 rev. A1
-  DEVICE_PACKAGES := ath10k-firmware-qca988x kmod-ath10k
+  DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
   BOARDNAME := DAP-2695-A1
   IMAGES := factory.img sysupgrade.bin
   IMAGE_SIZE := 15360k
@@ -1229,7 +1260,7 @@ TARGET_DEVICES += wifi-pineapple-nano
 define Device/wlr8100
   DEVICE_TITLE := Sitecom WLR-8100
   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb3 \
-       kmod-ath10k ath10k-firmware-qca988x
+       kmod-ath10k-ct ath10k-firmware-qca988x-ct
   BOARDNAME := WLR8100
   IMAGE_SIZE := 15424k
   MTDPARTS := spi0.0:192k(u-boot)ro,64k(u-boot-env)ro,15424k(firmware),256k(manufacture)ro,64k(backup)ro,320k(storage)ro,64k(art)ro