From 1edba538a97fe8a17a388a43506fe562533b02ed Mon Sep 17 00:00:00 2001 From: Chuanhong Guo Date: Thu, 2 Aug 2018 13:17:44 +0800 Subject: ath79: Fix led nodes for TL-WR740N v2 and add its clones This patch did the following things: 1. Separate ath9k-leds out of gpio leds so that all other leds will work before ath9k loded (e.g. during preinit/init stage). 2. Rename wps led to qss since that's how TP-Link mark it. 3. Rename LED prefix to tp-link because that dts is shared by many devices. 4. Rename to wr740n-v1 because v1 is the first and v2 just use the fw of v1. (This will require a forced sysupgrade if you comes from the previous wr740n v2 image.) 5. Remove SUPPORTED_DEVICES. (tl-wr740n-v2 doesn't exist anywhere so it's useless.) 6. Add all WR741ND v1 clones found in ar71xx. Signed-off-by: Chuanhong Guo --- .../linux/ath79/dts/ar7240_tplink_tl-wr740n-v1.dts | 9 ++ .../linux/ath79/dts/ar7240_tplink_tl-wr740n-v2.dts | 154 --------------------- .../linux/ath79/dts/ar7240_tplink_tl-wr740n-v3.dts | 9 ++ .../linux/ath79/dts/ar7240_tplink_tl-wr741-v1.dts | 9 ++ .../ath79/dts/ar7240_tplink_tl-wr743nd-v1.dts | 9 ++ .../ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi | 154 +++++++++++++++++++++ .../linux/ath79/dts/ar7240_tplink_tl-wr841-v5.dts | 9 ++ .../linux/ath79/dts/ar7240_tplink_tl-wr941-v4.dts | 9 ++ 8 files changed, 208 insertions(+), 154 deletions(-) create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v1.dts delete mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v2.dts create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v3.dts create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr741-v1.dts create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr743nd-v1.dts create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr841-v5.dts create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wr941-v4.dts (limited to 'target/linux/ath79/dts') diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v1.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v1.dts new file mode 100644 index 0000000000..a87e105c83 --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v1.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wr74xn-v1.dtsi" + +/ { + model = "TP-Link TL-WR740N v1/v2"; + compatible = "tplink,tl-wr740n-v1"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v2.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v2.dts deleted file mode 100644 index 90f554df20..0000000000 --- a/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v2.dts +++ /dev/null @@ -1,154 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/dts-v1/; - -#include -#include - -#include "ar7240.dtsi" - -/ { - compatible = "tplink,tl-wr740n-v2", "qca,ar7240"; - model = "TP-Link TL-WR740N v2"; - - aliases { - led-status = &led_system; - }; - - gpio-keys-polled { - compatible = "gpio-keys-polled"; - poll-interval = <20>; - - reset { - label = "reset"; - linux,code = ; - gpios = <&gpio 11 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - - wps { - label = "wps"; - linux,code = ; - gpios = <&gpio 12 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - }; - - gpio-leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&switch_led_pins>; - - led_system: system { - label = "tl-wr740n-v2:green:system"; - gpios = <&gpio 1 GPIO_ACTIVE_LOW>; - }; - - lan1 { - label = "tl-wr740n-v2:green:lan1"; - gpios = <&gpio 13 GPIO_ACTIVE_LOW>; - }; - - lan2 { - label = "tl-wr740n-v2:green:lan2"; - gpios = <&gpio 14 GPIO_ACTIVE_LOW>; - }; - - lan3 { - label = "tl-wr740n-v2:green:lan3"; - gpios = <&gpio 15 GPIO_ACTIVE_LOW>; - }; - - lan4 { - label = "tl-wr740n-v2:green:lan4"; - gpios = <&gpio 16 GPIO_ACTIVE_LOW>; - }; - - wan { - label = "tl-wr740n-v2:green:wan"; - gpios = <&gpio 17 GPIO_ACTIVE_LOW>; - }; - - wlan { - label = "tl-wr740n-v2:green:wlan"; - gpios = <&ath9k 1 GPIO_ACTIVE_LOW>; - default-state = "off"; - linux,default-trigger = "phy0tpt"; - }; - - wps { - label = "tl-wr740n-v2:green:wps"; - gpios = <&gpio 0 GPIO_ACTIVE_LOW>; - }; - }; -}; - -&spi { - status = "okay"; - num-cs = <1>; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <25000000>; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - uboot: partition@0 { - reg = <0x0 0x20000>; - label = "u-boot"; - read-only; - }; - - firmware: partition@20000 { - reg = <0x20000 0x3d0000>; - label = "firmware"; - }; - - art: partition@3f0000 { - reg = <0x3f0000 0x10000>; - label = "art"; - read-only; - }; - }; - }; -}; - -ð0 { - status = "okay"; - - mtd-mac-address = <&uboot 0x1fc00>; - mtd-mac-address-increment = <(-1)>; -}; - -ð1 { - status = "okay"; - - mtd-mac-address = <&uboot 0x1fc00>; - mtd-mac-address-increment = <1>; -}; - -&pcie { - status = "okay"; - - ath9k: wifi@0,0 { - compatible = "pci168c,002b"; - reg = <0x0000 0 0 0 0>; - qca,no-eeprom; - mtd-mac-address = <&uboot 0x1fc00>; - #gpio-cells = <2>; - gpio-controller; - }; -}; - -&pinmux { - switch_led_pins: pinmux_switch_led_pins { - pinctrl-single,bits = <0x0 0x0 0xf8>; - }; -}; - -&uart { - status = "okay"; -}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v3.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v3.dts new file mode 100644 index 0000000000..4c1aa57c4c --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr740n-v3.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wr74xn-v1.dtsi" + +/ { + model = "TP-Link TL-WR740N v3"; + compatible = "tplink,tl-wr740n-v3"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr741-v1.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr741-v1.dts new file mode 100644 index 0000000000..1d795be23b --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr741-v1.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wr74xn-v1.dtsi" + +/ { + model = "TP-Link TL-WR741N/ND v1/v2"; + compatible = "tplink,tl-wr741-v1"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr743nd-v1.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr743nd-v1.dts new file mode 100644 index 0000000000..5fff1a5986 --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr743nd-v1.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wr74xn-v1.dtsi" + +/ { + model = "TP-Link TL-WR743ND v1"; + compatible = "tplink,tl-wr743nd-v1"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi b/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi new file mode 100644 index 0000000000..80623d57bd --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr74xn-v1.dtsi @@ -0,0 +1,154 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include +#include + +#include "ar7240.dtsi" + +/ { + aliases { + led-status = &led_system; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + poll-interval = <20>; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 11 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + + wps { + label = "wps"; + linux,code = ; + gpios = <&gpio 12 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&switch_led_pins>; + + led_system: system { + label = "tp-link:green:system"; + gpios = <&gpio 1 GPIO_ACTIVE_LOW>; + }; + + qss { + label = "tp-link:green:qss"; + gpios = <&gpio 0 GPIO_ACTIVE_LOW>; + }; + + lan1 { + label = "tp-link:green:lan1"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + }; + + lan2 { + label = "tp-link:green:lan2"; + gpios = <&gpio 14 GPIO_ACTIVE_LOW>; + }; + + lan3 { + label = "tp-link:green:lan3"; + gpios = <&gpio 15 GPIO_ACTIVE_LOW>; + }; + + lan4 { + label = "tp-link:green:lan4"; + gpios = <&gpio 16 GPIO_ACTIVE_LOW>; + }; + + wan { + label = "tp-link:green:wan"; + gpios = <&gpio 17 GPIO_ACTIVE_LOW>; + }; + }; + + ath9k-leds { + compatible = "gpio-leds"; + + wlan { + label = "tp-link:green:wlan"; + gpios = <&ath9k 1 GPIO_ACTIVE_LOW>; + default-state = "off"; + linux,default-trigger = "phy0tpt"; + }; + }; +}; + +&spi { + status = "okay"; + num-cs = <1>; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + uboot: partition@0 { + reg = <0x0 0x20000>; + label = "u-boot"; + read-only; + }; + + firmware: partition@20000 { + reg = <0x20000 0x3d0000>; + label = "firmware"; + }; + + art: partition@3f0000 { + reg = <0x3f0000 0x10000>; + label = "art"; + read-only; + }; + }; + }; +}; + +ð0 { + status = "okay"; + + mtd-mac-address = <&uboot 0x1fc00>; + mtd-mac-address-increment = <(-1)>; +}; + +ð1 { + status = "okay"; + + mtd-mac-address = <&uboot 0x1fc00>; + mtd-mac-address-increment = <1>; +}; + +&pcie { + status = "okay"; + + ath9k: wifi@0,0 { + compatible = "pci168c,002b"; + reg = <0x0000 0 0 0 0>; + qca,no-eeprom; + mtd-mac-address = <&uboot 0x1fc00>; + #gpio-cells = <2>; + gpio-controller; + }; +}; + +&pinmux { + switch_led_pins: pinmux_switch_led_pins { + pinctrl-single,bits = <0x0 0x0 0xf8>; + }; +}; + +&uart { + status = "okay"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr841-v5.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr841-v5.dts new file mode 100644 index 0000000000..bcb82f3c8c --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr841-v5.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wr74xn-v1.dtsi" + +/ { + model = "TP-Link TL-WR841N/ND v5/v6"; + compatible = "tplink,tl-wr841-v5"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wr941-v4.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wr941-v4.dts new file mode 100644 index 0000000000..c67d803651 --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wr941-v4.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wr74xn-v1.dtsi" + +/ { + model = "TP-Link TL-WR941N/ND v4"; + compatible = "tplink,tl-wr941-v4"; +}; -- cgit v1.2.3