Rebased from upstream / out of band repository.
[librecmc/librecmc.git] / target / linux / ath79 / dts / qca9558_tplink_archer-c7.dtsi
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 /dts-v1/;
3
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6
7 #include "qca9557.dtsi"
8
9 / {
10         chosen {
11                 bootargs = "console=ttyS0,115200n8";
12         };
13
14         aliases {
15                 led-boot = &system;
16                 led-failsafe = &system;
17                 led-running = &system;
18                 led-upgrade = &system;
19         };
20
21         gpio_leds: leds {
22                 compatible = "gpio-leds";
23
24                 system: system {
25                         label = "tp-link:green:system";
26                         gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
27                         default-state = "on";
28                 };
29
30                 usb1 {
31                         label = "tp-link:green:usb1";
32                         gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
33                         trigger-sources = <&hub_port1>;
34                         linux,default-trigger = "usbport";
35                 };
36
37                 usb2 {
38                         label = "tp-link:green:usb2";
39                         gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
40                         trigger-sources = <&hub_port0>;
41                         linux,default-trigger = "usbport";
42                 };
43
44                 led_wlan2g: wlan2g {
45                         label = "tp-link:green:wlan2g";
46                         gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
47                         linux,default-trigger = "phy1tpt";
48                 };
49
50                 qss {
51                         label = "tp-link:green:qss";
52                         gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
53                 };
54         };
55
56         gpio_keys: keys {
57                 compatible = "gpio-keys";
58
59                 reset {
60                         label = "Reset button";
61                         linux,code = <KEY_RESTART>;
62                         gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
63                         debounce-interval = <60>;
64                 };
65         };
66
67         gpio-export {
68                 compatible = "gpio-export";
69
70                 gpio_usb1_power {
71                         gpio-export,name = "tp-link:power:usb1";
72                         gpio-export,output = <1>;
73                         gpios = <&gpio 21 GPIO_ACTIVE_HIGH>;
74                 };
75
76                 gpio_usb2_power {
77                         gpio-export,name = "tp-link:power:usb2";
78                         gpio-export,output = <1>;
79                         gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
80                 };
81
82         };
83 };
84
85 &pcie1 {
86         status = "okay";
87 };
88
89 &uart {
90         status = "okay";
91 };
92
93 &gpio {
94         status = "okay";
95 };
96
97 &usb_phy0 {
98         status = "okay";
99 };
100
101 &usb0 {
102         #address-cells = <1>;
103         #size-cells = <0>;
104         status = "okay";
105
106         hub_port0: port@1 {
107                 reg = <1>;
108                 #trigger-source-cells = <0>;
109         };
110 };
111
112 &usb_phy1 {
113         status = "okay";
114 };
115
116 &usb1 {
117         #address-cells = <1>;
118         #size-cells = <0>;
119         status = "okay";
120
121         hub_port1: port@1 {
122                 reg = <1>;
123                 #trigger-source-cells = <0>;
124         };
125 };
126
127 &spi {
128         status = "okay";
129         num-cs = <1>;
130
131         flash@0 {
132                 compatible = "jedec,spi-nor";
133                 reg = <0>;
134                 spi-max-frequency = <25000000>;
135
136                 mtdparts: partitions {
137                         compatible = "fixed-partitions";
138                         #address-cells = <1>;
139                         #size-cells = <1>;
140                 };
141         };
142 };
143
144 &mdio0 {
145         status = "okay";
146
147         phy0: ethernet-phy@0 {
148                 reg = <0>;
149
150                 qca,ar8327-initvals = <
151                         0x04 0x00080080 /* PORT0 PAD MODE CTRL */
152                         0x0c 0x07600000 /* PORT6 PAD MODE CTRL */
153                         0x50 0xc737c737 /* LED_CTRL0 */
154                         0x54 0x00000000 /* LED_CTRL1 */
155                         0x58 0x00000000 /* LED_CTRL2 */
156                         0x5c 0x0030c300 /* LED_CTRL3 */
157                         0x7c 0x0000007e /* PORT0_STATUS */
158                         0x94 0x0000007e /* PORT6 STATUS */
159                         >;
160         };
161 };
162
163 &eth0 {
164         status = "okay";
165
166         mtd-mac-address = <&uboot 0x1fc00>;
167         mtd-mac-address-increment = <1>;
168         phy-handle = <&phy0>;
169         pll-data = <0x56000000 0x00000101 0x00001616>;
170
171         gmac-config {
172                 device = <&gmac>;
173                 rgmii-enabled = <1>;
174         };
175 };
176
177 &eth1 {
178         status = "okay";
179
180         mtd-mac-address = <&uboot 0x1fc00>;
181         pll-data = <0x03000101 0x00000101 0x00001616>;
182
183         fixed-link {
184                 speed = <1000>;
185                 full-duplex;
186         };
187 };
188
189 &wmac {
190         status = "okay";
191         mtd-cal-data = <&art 0x1000>;
192         mtd-mac-address = <&uboot 0x1fc00>;
193 };