From c642a97aa6b51352a718449cd715b92f94af4a5d Mon Sep 17 00:00:00 2001
From: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Date: Mon, 9 Dec 2019 13:53:21 +0100
Subject: [PATCH] ath79: add support for TP-Link TL-WDR4300 v1 (IL)

The TL-WDR4300 v1 sold in Israel has a different TPLINK_HWID.

Thanks to Josh4300 for testing on device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 .../ath79/dts/ar9344_tplink_tl-wdr4300-v1-il.dts      |  9 +++++++++
 .../ath79/generic/base-files/etc/board.d/02_network   |  3 ++-
 .../base-files/etc/hotplug.d/firmware/10-ath9k-eeprom |  1 +
 target/linux/ath79/image/generic-tp-link.mk           | 11 +++++++++++
 4 files changed, 23 insertions(+), 1 deletion(-)
 create mode 100644 target/linux/ath79/dts/ar9344_tplink_tl-wdr4300-v1-il.dts

diff --git a/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300-v1-il.dts b/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300-v1-il.dts
new file mode 100644
index 00000000000..a84285d69a5
--- /dev/null
+++ b/target/linux/ath79/dts/ar9344_tplink_tl-wdr4300-v1-il.dts
@@ -0,0 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include "ar9344_tplink_tl-wdr4300.dtsi"
+
+/ {
+	model = "TP-Link TL-WDR4300 v1 (IL)";
+	compatible = "tplink,tl-wdr4300-v1-il", "qca,ar9344";
+};
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network
index 938213eadcf..77e2db762f9 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network
@@ -212,7 +212,8 @@ ath79_setup_interfaces()
 	tplink,archer-c7-v4|\
 	tplink,archer-c7-v5|\
 	tplink,tl-wdr3600-v1|\
-	tplink,tl-wdr4300-v1)
+	tplink,tl-wdr4300-v1|\
+	tplink,tl-wdr4300-v1-il)
 		ucidef_add_switch "switch0" \
 			"0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
 		;;
diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
index f04fb64fc9d..84d840569b4 100644
--- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
+++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
@@ -72,6 +72,7 @@ case "$FIRMWARE" in
 	tplink,tl-wdr3500-v1|\
 	tplink,tl-wdr3600-v1|\
 	tplink,tl-wdr4300-v1|\
+	tplink,tl-wdr4300-v1-il|\
 	tplink,tl-wdr4900-v2|\
 	winchannel,wb2000)
 		caldata_extract "art" 0x5000 0x440
diff --git a/target/linux/ath79/image/generic-tp-link.mk b/target/linux/ath79/image/generic-tp-link.mk
index f5e1a90418a..89155523229 100644
--- a/target/linux/ath79/image/generic-tp-link.mk
+++ b/target/linux/ath79/image/generic-tp-link.mk
@@ -399,6 +399,17 @@ define Device/tplink_tl-wdr4300-v1
 endef
 TARGET_DEVICES += tplink_tl-wdr4300-v1
 
+define Device/tplink_tl-wdr4300-v1-il
+  $(Device/tplink-8mlzma)
+  ATH_SOC := ar9344
+  DEVICE_MODEL := TL-WDR4300
+  DEVICE_VARIANT := v1 (IL)
+  DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
+  TPLINK_HWID := 0x43008001
+  SUPPORTED_DEVICES += tl-wdr4300
+endef
+TARGET_DEVICES += tplink_tl-wdr4300-v1-il
+
 define Device/tplink_tl-wdr4900-v2
   $(Device/tplink-8mlzma)
   ATH_SOC := qca9558
-- 
GitLab