mv $@.new $@
endef
+# Similar to Build/tplink-safeloader but uses TRX instead of clean kernel
+define Build/bcm53xx-tplink-safeloader
+ $(STAGING_DIR_HOST)/bin/trx \
+ -o $@.trx \
+ -m 33554432 \
+ -f $(IMAGE_KERNEL) -a 1024
+ $(STAGING_DIR_HOST)/bin/tplink-safeloader \
+ -B $(TPLINK_BOARD) \
+ -k $@.trx \
+ -r $@ \
+ -j \
+ -o $@.new
+ mv $@.new $@
+ rm $@.trx
+endef
+
define Build/trx-serial
$(STAGING_DIR_HOST)/bin/trx \
-o $@.new \
-i $@.entity
endef
-DEVICE_VARS += PRODUCTID SIGNATURE NETGEAR_BOARD_ID NETGEAR_REGION
+DEVICE_VARS += PRODUCTID SIGNATURE NETGEAR_BOARD_ID NETGEAR_REGION TPLINK_BOARD
BRCMFMAC_43602A1 := kmod-brcmfmac brcmfmac-firmware-43602a1-pcie
BRCMFMAC_4366B1 := kmod-brcmfmac brcmfmac-firmware-4366b1-pcie
-USB2_PACKAGES := kmod-usb-ohci kmod-usb2
-USB3_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb3
+USB2_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-phy-bcm-ns-usb2
+USB2_PACKAGES += kmod-usb-ledtrig-usbport
+USB3_PACKAGES := $(USB2_PACKAGES) kmod-usb3 kmod-phy-bcm-ns-usb3
define Device/Default
# .dtb files are prefixed by SoC type, e.g. bcm4708- which is not included in device/image names
DEVICE_TITLE := Linksys EA6300 V1
DEVICE_PACKAGES := kmod-b43 $(USB3_PACKAGES)
endef
-TARGET_DEVICES += linksys-ea6300-v1
+# Disabled due to problems with 2 TRX partitions
+# TARGET_DEVICES += linksys-ea6300-v1
define Device/netgear
IMAGES := chk
define Device/tenda-ac9
DEVICE_TITLE := Tenda AC9
- DEVICE_PACKAGES := $(USB2_PACKAGES)
+ DEVICE_PACKAGES := kmod-b43 $(USB2_PACKAGES)
IMAGES := trx
IMAGE/trx := append-rootfs | trx-serial
endef
TARGET_DEVICES += tenda-ac9
+define Device/tplink-archer-c9-v1
+ DEVICE_TITLE := TP-LINK Archer C9 V1
+ DEVICE_PACKAGES := $(USB3_PACKAGES)
+ IMAGES := bin
+ IMAGE/bin := append-rootfs | bcm53xx-tplink-safeloader
+ TPLINK_BOARD := ARCHERC9
+endef
+TARGET_DEVICES += tplink-archer-c9-v1
+
TARGET_DEVICES += \
netgear-r6250 netgear-r6300-v2 netgear-r8000 \
smartrg-sr400ac