ramips: add TP-Link TL-WR802N-v4 support
[openwrt/openwrt.git] / target / linux / ramips / image / mt76x8.mk
index eaafb149a23bdb59a35fd78ab3b86b8429290c2b..414798d08ce7c03f81665921649c6fa639e4ecec 100644 (file)
@@ -2,6 +2,22 @@
 # MT76x8 Profiles
 #
 
+DEVICE_VARS += SERCOMM_HWID SERCOMM_HWVER SERCOMM_SWVER
+
+define Build/sercom-seal
+       $(STAGING_DIR_HOST)/bin/mksercommfw \
+               -i $@ \
+               -b $(SERCOMM_HWID) \
+               -r $(SERCOMM_HWVER) \
+               -v $(SERCOMM_SWVER) \
+               $(1)
+endef
+
+define Build/sercom-footer
+       $(call Build/sercom-seal,-f)
+endef
+
+
 define Device/tplink
   TPLINK_FLASHLAYOUT :=
   TPLINK_HWID :=
@@ -57,6 +73,14 @@ define Device/hc5661a
 endef
 TARGET_DEVICES += hc5661a
 
+define Device/hiwifi_hc5861b
+  DTS := HC5861B
+  IMAGE_SIZE := 15808k
+  DEVICE_TITLE := HiWiFi HC5861B
+  DEVICE_PACKAGES := kmod-mt76x2
+endef
+TARGET_DEVICES += hiwifi_hc5861b
+
 define Device/LinkIt7688
   DTS := LINKIT7688
   IMAGE_SIZE := $(ralink_default_fw_size_32M)
@@ -70,6 +94,7 @@ define Device/mac1200r-v2
   DTS := MAC1200RV2
   DEVICE_TITLE := Mercury MAC1200R v2.0
   SUPPORTED_DEVICES := mac1200rv2
+  DEVICE_PACKAGES := kmod-mt76x2
 endef
 TARGET_DEVICES += mac1200r-v2
 
@@ -90,6 +115,23 @@ define Device/mt7628
 endef
 TARGET_DEVICES += mt7628
 
+define Device/netgear_r6120
+  DTS := R6120
+  BLOCKSIZE := 64k
+  IMAGE_SIZE := $(ralink_default_fw_size_16M)
+  DEVICE_TITLE := Netgear R6120
+  DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci
+  SERCOMM_HWID := CGQ
+  SERCOMM_HWVER := A001
+  SERCOMM_SWVER := 0x0040
+  IMAGES += factory.img
+  IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE)| append-rootfs | pad-rootfs
+  IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
+  IMAGE/factory.img := pad-extra 576k | $$(IMAGE/default) | \
+       sercom-footer | pad-to 128 | zip R6120.bin | sercom-seal
+endef
+TARGET_DEVICES += netgear_r6120
+
 define Device/omega2
   DTS := OMEGA2
   IMAGE_SIZE := $(ralink_default_fw_size_16M)
@@ -114,6 +156,14 @@ define Device/pbr-d1
 endef
 TARGET_DEVICES += pbr-d1
 
+define Device/skylab_skw92a
+  DTS := SKW92A
+  IMAGE_SIZE := 16064k
+  DEVICE_TITLE := Skylab SKW92A
+  DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci
+endef
+TARGET_DEVICES += skylab_skw92a
+
 define Device/tplink_tl-wa801nd-v5
   $(Device/tplink)
   DTS := TL-WA801NDV5
@@ -127,6 +177,19 @@ define Device/tplink_tl-wa801nd-v5
 endef
 TARGET_DEVICES += tplink_tl-wa801nd-v5
 
+define Device/tplink_tl-wr802n-v4
+  $(Device/tplink)
+  DTS := TL-WR802NV4
+  IMAGE_SIZE := 7808k
+  DEVICE_TITLE := TP-Link TL-WR802N v4
+  TPLINK_FLASHLAYOUT := 8Mmtk
+  TPLINK_HWID := 0x08020004
+  TPLINK_HWREV := 0x1
+  TPLINK_HWREVADD := 0x4
+  TPLINK_HVERSION := 3
+endef
+TARGET_DEVICES += tplink_tl-wr802n-v4
+
 define Device/tl-wr840n-v4
   $(Device/tplink)
   DTS := TL-WR840NV4
@@ -179,6 +242,7 @@ define Device/tplink_c20-v4
   TPLINK_HWREV := 0x1
   TPLINK_HWREVADD := 0x4
   TPLINK_HVERSION := 3
+  DEVICE_PACKAGES := kmod-mt76x0e
 endef
 TARGET_DEVICES += tplink_c20-v4
 
@@ -192,9 +256,39 @@ define Device/tplink_c50-v3
   TPLINK_HWREV := 0x79
   TPLINK_HWREVADD := 0x1
   TPLINK_HVERSION := 3
+  DEVICE_PACKAGES := kmod-mt76x2
 endef
 TARGET_DEVICES += tplink_c50-v3
 
+define Device/tplink_c50-v4
+  $(Device/tplink)
+  DTS := ArcherC50V4
+  IMAGE_SIZE := 7616k
+  DEVICE_TITLE := TP-Link ArcherC50 v4
+  TPLINK_FLASHLAYOUT := 8MSUmtk
+  TPLINK_HWID := 0x001D589B
+  TPLINK_HWREV := 0x93
+  TPLINK_HWREVADD := 0x2
+  TPLINK_HVERSION := 3
+  DEVICE_PACKAGES := kmod-mt76x2
+  IMAGES := sysupgrade.bin
+endef
+TARGET_DEVICES += tplink_c50-v4
+
+define Device/tplink_tl-mr3020-v3
+  $(Device/tplink)
+  DTS := TL-MR3020V3
+  IMAGE_SIZE := 7808k
+  DEVICE_TITLE := TP-Link TL-MR3020 v3
+  TPLINK_FLASHLAYOUT := 8Mmtk
+  TPLINK_HWID := 0x30200003
+  TPLINK_HWREV := 0x3
+  TPLINK_HWREVADD := 0x3
+  TPLINK_HVERSION := 3
+  DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
+endef
+TARGET_DEVICES += tplink_tl-mr3020-v3
+
 define Device/tplink_tl-mr3420-v5
   $(Device/tplink)
   DTS := TL-MR3420V5
@@ -233,8 +327,7 @@ define Device/tplink_tl-wr902ac-v3
   TPLINK_HWREV := 0x89
   TPLINK_HWREVADD := 0x1
   TPLINK_HVERSION := 3
-  IMAGES += factory.bin
-  DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
+  DEVICE_PACKAGES := kmod-mt76x0e kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
 endef
 TARGET_DEVICES += tplink_tl-wr902ac-v3
 
@@ -264,6 +357,23 @@ define Device/vocore2lite
 endef
 TARGET_DEVICES += vocore2lite
 
+define Device/wavlink_wl-wn570ha1
+  DTS := WL-WN570HA1
+  IMAGE_SIZE := $(ralink_default_fw_size_8M)
+  DEVICE_TITLE := Wavlink WL-WN570HA1
+  DEVICE_PACKAGES := kmod-mt76x0e
+endef
+TARGET_DEVICES += wavlink_wl-wn570ha1
+
+define Device/wavlink_wl-wn575a3
+  DTS := WL-WN575A3
+  IMAGE_SIZE := $(ralink_default_fw_size_8M)
+  DEVICE_TITLE := Wavlink WL-WN575A3
+  DEVICE_PACKAGES := kmod-mt76x2
+  SUPPORTED_DEVICES += wl-wn575a3
+endef
+TARGET_DEVICES += wavlink_wl-wn575a3
+
 define Device/wcr-1166ds
   DTS := WCR-1166DS
   BUFFALO_TAG_PLATFORM := MTK
@@ -277,16 +387,10 @@ define Device/wcr-1166ds
        buffalo-tag-dhp WCR-1166DS JP JP | buffalo-enc-tag -l | \
        buffalo-dhp-image
   DEVICE_TITLE := Buffalo WCR-1166DS
+  DEVICE_PACKAGES := kmod-mt76x2
 endef
 TARGET_DEVICES += wcr-1166ds
 
-define Device/wl-wn575a3
-  DTS := WL-WN575A3
-  IMAGE_SIZE := $(ralink_default_fw_size_8M)
-  DEVICE_TITLE := Wavlink WL-WN575A3
-endef
-TARGET_DEVICES += wl-wn575a3
-
 define Device/widora_neo-16m
   DTS := WIDORA-NEO-16M
   IMAGE_SIZE := $(ralink_default_fw_size_16M)
@@ -332,9 +436,9 @@ define Device/zyxel_keenetic-extra-ii
   IMAGE_SIZE := 14912k
   BLOCKSIZE := 64k
   DEVICE_TITLE := ZyXEL Keenetic Extra II
-  DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
+  DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport
   IMAGES += factory.bin
-  IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | pad-to $$$$(BLOCKSIZE) | \
+  IMAGE/factory.bin := $$(sysupgrade_bin) | pad-to $$$$(BLOCKSIZE) | \
        check-size $$$$(IMAGE_SIZE) | zyimage -d 6162 -v "ZyXEL Keenetic Extra II"
 endef
 TARGET_DEVICES += zyxel_keenetic-extra-ii