From 253095131d7b1a22d9a97cf81640bb3cacc941e4 Mon Sep 17 00:00:00 2001 From: Lucian Cristian Date: Sat, 19 May 2018 20:12:58 +0300 Subject: [PATCH] ath79: initial tl-wr1043nd v1 support Signed-off-by: Lucian Cristian Signed-off-by: John Crispin --- target/linux/ath79/dts/ar9132.dtsi | 21 +++++ ...043nd_v1.dts => ar9132_tl-wr1043nd-v1.dts} | 82 ++++++++++++++++--- target/linux/ath79/image/generic-tp-link.mk | 4 +- 3 files changed, 93 insertions(+), 14 deletions(-) rename target/linux/ath79/dts/{ar9132_tl_wr1043nd_v1.dts => ar9132_tl-wr1043nd-v1.dts} (60%) diff --git a/target/linux/ath79/dts/ar9132.dtsi b/target/linux/ath79/dts/ar9132.dtsi index 4cc4f04a2e..f1822e8775 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 similarity index 60% rename from target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts rename to target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts index c3efe6631a..97ad5ac203 100644 --- a/target/linux/ath79/dts/ar9132_tl_wr1043nd_v1.dts +++ b/target/linux/ath79/dts/ar9132_tl-wr1043nd-v1.dts @@ -10,6 +10,10 @@ 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>; @@ -22,19 +26,18 @@ }; keys { - compatible = "gpio-keys-polled"; + compatible = "gpio-keys"; #address-cells = <1>; #size-cells = <0>; - poll-interval = <20>; - button@0 { + button0 { label = "reset"; linux,code = ; gpios = <&gpio 3 GPIO_ACTIVE_LOW>; debounce-interval = <60>; }; - button@1 { + button1 { label = "qss"; linux,code = ; gpios = <&gpio 7 GPIO_ACTIVE_LOW>; @@ -44,27 +47,50 @@ leds { compatible = "gpio-leds"; - led@0 { + usb { label = "tp-link:green:usb"; gpios = <&gpio 1 GPIO_ACTIVE_LOW>; + default-state = "off"; + trigger-sources = <&hub_port>; + linux,default-trigger = "usbport"; }; - led@1 { + system: system { label = "tp-link:green:system"; gpios = <&gpio 2 GPIO_ACTIVE_LOW>; linux,default-trigger = "heartbeat"; }; - led@2 { + qss { label = "tp-link:green:qss"; gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; }; - led@3 { + 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 { @@ -77,6 +103,16 @@ &usb { status = "okay"; + + port@1 { + reg = <1>; + #trigger-source-cells = <0>; + + hub_port: port@1 { + reg = <1>; + #trigger-source-cells = <0>; + }; + }; }; &usb_phy { @@ -90,7 +126,7 @@ flash@0 { #address-cells = <1>; #size-cells = <1>; - compatible = "s25sl064a"; + compatible = "jedec,spi-nor"; reg = <0>; spi-max-frequency = <25000000>; @@ -99,18 +135,18 @@ #address-cells = <1>; #size-cells = <1>; - partition@0 { + uboot: partition@0 { label = "u-boot"; reg = <0x000000 0x020000>; read-only; }; - partition@1 { + partition@020000 { label = "firmware"; reg = <0x020000 0x7D0000>; }; - partition@2 { + art: partition@7F0000 { label = "art"; reg = <0x7F0000 0x010000>; read-only; @@ -118,3 +154,25 @@ }; }; }; + +ð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/image/generic-tp-link.mk b/target/linux/ath79/image/generic-tp-link.mk index a368662cca..8a0388a7ff 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) -- 2.30.2