From 253095131d7b1a22d9a97cf81640bb3cacc941e4 Mon Sep 17 00:00:00 2001 From: Lucian Cristian Date: Sat, 19 May 2018 20:12:58 +0300 Subject: ath79: initial tl-wr1043nd v1 support Signed-off-by: Lucian Cristian Signed-off-by: John Crispin --- target/linux/ath79/dts/ar9132.dtsi | 21 +++ target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts | 178 +++++++++++++++++++++++ target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts | 120 --------------- target/linux/ath79/image/generic-tp-link.mk | 4 +- 4 files changed, 201 insertions(+), 122 deletions(-) create mode 100644 target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts delete mode 100644 target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts (limited to 'target/linux/ath79') diff --git a/target/linux/ath79/dts/ar9132.dtsi b/target/linux/ath79/dts/ar9132.dtsi index 4cc4f04..f1822e8 100644 --- a/target/linux/ath79/dts/ar9132.dtsi +++ b/target/linux/ath79/dts/ar9132.dtsi @@ -1,5 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 #include +#include "ath79.dtsi" / { compatible = "qca,ar9132"; @@ -160,6 +161,15 @@ #address-cells = <1>; #size-cells = <0>; }; + + wmac: gmac@180c0000 { + compatible = "qca,ar9130-wmac"; + reg = <0x180c0000 0x230000>; + + interrupts = <2>; + + status = "disabled"; + }; }; usb_phy: usb-phy { @@ -173,3 +183,14 @@ status = "disabled"; }; }; + +ð0 { + compatible = "qca,ar9130-eth", "syscon"; + reg = <0x19000000 0x200 + 0x18070000 0x4>; + pll-data = <0x1a000000 0x13000a44 0x00441099>; + pll-reg = <0x4 0x10 17>; + pll-handle = <&pll>; + resets = <&rst 8>, <&rst 9>; + reset-names = "phy", "mac"; +}; diff --git a/target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts b/target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts new file mode 100644 index 0000000..97ad5ac --- /dev/null +++ b/target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts @@ -0,0 +1,178 @@ +// SPDX-License-Identifier: GPL-2.0 +/dts-v1/; + +#include +#include + +#include "ar9132.dtsi" + +/ { + compatible = "tplink,tl-wr1043nd-v1", "qca,ar9132"; + model = "TP-Link TL-WR1043ND Version 1"; + + aliases { + led-status = &system; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x2000000>; + }; + + extosc: ref { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <40000000>; + }; + + keys { + compatible = "gpio-keys"; + #address-cells = <1>; + #size-cells = <0>; + + button0 { + label = "reset"; + linux,code = ; + gpios = <&gpio 3 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + + button1 { + label = "qss"; + linux,code = ; + gpios = <&gpio 7 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + + leds { + compatible = "gpio-leds"; + usb { + label = "tp-link:green:usb"; + gpios = <&gpio 1 GPIO_ACTIVE_LOW>; + default-state = "off"; + trigger-sources = <&hub_port>; + linux,default-trigger = "usbport"; + }; + + system: system { + label = "tp-link:green:system"; + gpios = <&gpio 2 GPIO_ACTIVE_LOW>; + linux,default-trigger = "heartbeat"; + }; + + qss { + label = "tp-link:green:qss"; + gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; + }; + + wlan { + label = "tp-link:green:wlan"; + gpios = <&gpio 9 GPIO_ACTIVE_LOW>; + default-state = "off"; + linux,default-trigger = "phy0tpt"; + }; + }; + + rtl8366rb { + compatible = "realtek,rtl8366rb"; + gpio-sda = <&gpio 18 GPIO_ACTIVE_HIGH>; + gpio-sck = <&gpio 19 GPIO_ACTIVE_HIGH>; + + resets = <&rst 8>; + reset-names = "switch"; + + mdio-bus { + status = "okay"; + + phy0: ethernet-phy@0 { + reg = <0>; + }; + }; + }; + +}; + +&uart { + status = "okay"; +}; + +&pll { + clocks = <&extosc>; +}; + +&usb { + status = "okay"; + + port@1 { + reg = <1>; + #trigger-source-cells = <0>; + + hub_port: port@1 { + reg = <1>; + #trigger-source-cells = <0>; + }; + }; +}; + +&usb_phy { + status = "okay"; +}; + +&spi { + status = "okay"; + num-cs = <1>; + + flash@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + uboot: partition@0 { + label = "u-boot"; + reg = <0x000000 0x020000>; + read-only; + }; + + partition@020000 { + label = "firmware"; + reg = <0x020000 0x7D0000>; + }; + + art: partition@7F0000 { + label = "art"; + reg = <0x7F0000 0x010000>; + read-only; + }; + }; + }; +}; + +ð0 { + status = "okay"; + + phy-mode = "rgmii"; + mtd-mac-address = <&uboot 0x1fc00>; + + resets = <&rst 9>; + reset-names = "mac"; + + phy-handle = <&phy0>; + fixed-link { + speed = <1000>; + full-duplex; + }; +}; + +&wmac { + status = "okay"; + mtd-cal-data = <&art 0x1000>; + mtd-mac-address = <&uboot 0x1fc00>; +}; diff --git a/target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts b/target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts deleted file mode 100644 index c3efe66..0000000 --- a/target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts +++ /dev/null @@ -1,120 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0 -/dts-v1/; - -#include -#include - -#include "ar9132.dtsi" - -/ { - compatible = "tplink,tl-wr1043nd-v1", "qca,ar9132"; - model = "TP-Link TL-WR1043ND Version 1"; - - memory@0 { - device_type = "memory"; - reg = <0x0 0x2000000>; - }; - - extosc: ref { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <40000000>; - }; - - keys { - compatible = "gpio-keys-polled"; - #address-cells = <1>; - #size-cells = <0>; - - poll-interval = <20>; - button@0 { - label = "reset"; - linux,code = ; - gpios = <&gpio 3 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - - button@1 { - label = "qss"; - linux,code = ; - gpios = <&gpio 7 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - }; - - leds { - compatible = "gpio-leds"; - led@0 { - label = "tp-link:green:usb"; - gpios = <&gpio 1 GPIO_ACTIVE_LOW>; - }; - - led@1 { - label = "tp-link:green:system"; - gpios = <&gpio 2 GPIO_ACTIVE_LOW>; - linux,default-trigger = "heartbeat"; - }; - - led@2 { - label = "tp-link:green:qss"; - gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; - }; - - led@3 { - label = "tp-link:green:wlan"; - gpios = <&gpio 9 GPIO_ACTIVE_LOW>; - }; - }; -}; - -&uart { - status = "okay"; -}; - -&pll { - clocks = <&extosc>; -}; - -&usb { - status = "okay"; -}; - -&usb_phy { - status = "okay"; -}; - -&spi { - status = "okay"; - num-cs = <1>; - - flash@0 { - #address-cells = <1>; - #size-cells = <1>; - compatible = "s25sl064a"; - reg = <0>; - spi-max-frequency = <25000000>; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - partition@0 { - label = "u-boot"; - reg = <0x000000 0x020000>; - read-only; - }; - - partition@1 { - label = "firmware"; - reg = <0x020000 0x7D0000>; - }; - - partition@2 { - label = "art"; - reg = <0x7F0000 0x010000>; - read-only; - }; - }; - }; -}; diff --git a/target/linux/ath79/image/generic-tp-link.mk b/target/linux/ath79/image/generic-tp-link.mk index a368662..8a0388a 100644 --- a/target/linux/ath79/image/generic-tp-link.mk +++ b/target/linux/ath79/image/generic-tp-link.mk @@ -78,7 +78,7 @@ $(Device/tplink) IMAGE_SIZE := 7936k endef -define Device/tl_wr1043nd_v1 +define Device/tl-wr1043nd-v1 $(Device/tplink-8m) ATH_SOC := ar9132 DEVICE_TITLE := TP-LINK TL-WR1043N/ND v1 @@ -86,7 +86,7 @@ define Device/tl_wr1043nd_v1 TPLINK_HWID := 0x10430001 SUPPORTED_DEVICES := tplink,tl-wr1043nd-v1 tl-wr1043nd endef -#TARGET_DEVICES += tl_wr1043nd_v1 +TARGET_DEVICES += tl-wr1043nd-v1 define Device/tl-wdr3600 $(Device/tplink-8mlzma) -- cgit v1.1