4f65b2d2e2923e630af743110be23e88349518ba
[oweals/openwrt.git] / target / linux / ath79 / dts / qca9563_glinet_gl-ar750s.dts
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 "qca956x.dtsi"
8
9 / {
10         compatible = "glinet,gl-ar750s", "qca,qca9563";
11         model = "GL.iNet GL-AR750S";
12
13         chosen {
14                 bootargs = "console=ttyS0,115200n8";
15         };
16
17         aliases {
18                 led-boot = &power;
19                 led-failsafe = &power;
20                 led-running = &power;
21                 led-upgrade = &power;
22         };
23
24         keys {
25                 compatible = "gpio-keys";
26
27                 pinctrl-names = "default";
28                 pinctrl-0 = <&jtag_disable_pins>;
29
30                 reset {
31                         label = "reset";
32                         linux,code = <KEY_RESTART>;
33                         gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
34                 };
35
36                 mode {
37                         label = "mode";
38                         linux,code = <BTN_0>;
39                         linux,input-type = <EV_SW>;
40                         gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
41                 };
42         };
43
44         leds {
45                 compatible = "gpio-leds";
46
47                 power: power {
48                         label = "gl-ar750s:green:power";
49                         gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
50                         default-state = "keep";
51                 };
52
53                 wlan2g {
54                         label = "gl-ar750s:green:wlan2g";
55                         gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
56                         linux,default-trigger = "phy1tpt";
57                 };
58
59                 wlan5g {
60                         label = "gl-ar750s:green:wlan5g";
61                         gpios = <&gpio 20 GPIO_ACTIVE_HIGH>;
62                         linux,default-trigger = "phy0tpt";
63                 };
64         };
65
66         i2c: i2c {
67                 compatible = "i2c-gpio";
68
69                 sda-gpios = <&gpio  5 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
70                 scl-gpios = <&gpio 21 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
71         };
72
73         usb_vbus: regulator-usb-vbus {
74                 compatible = "regulator-fixed";
75
76                 regulator-name = "USB_VBUS";
77
78                 regulator-min-microvolt = <5000000>;
79                 regulator-max-microvolt = <5000000>;
80                 regulator-always-on;
81
82                 gpio = <&gpio 7 GPIO_ACTIVE_HIGH>;
83                 enable-active-high;
84         };
85 };
86
87 &spi {
88         status = "okay";
89         num-cs = <0>;
90
91         flash@0 {
92                 compatible = "jedec,spi-nor";
93                 reg = <0>;
94                 spi-max-frequency = <25000000>;
95
96                 partitions {
97                         compatible = "fixed-partitions";
98                         #address-cells = <1>;
99                         #size-cells = <1>;
100
101                         partition@0 {
102                                 label = "u-boot";
103                                 reg = <0x000000 0x040000>;
104                                 read-only;
105                         };
106
107                         partition@40000 {
108                                 label = "u-boot-env";
109                                 reg = <0x040000 0x010000>;
110                         };
111
112                         art: partition@50000 {
113                                 label = "art";
114                                 reg = <0x050000 0x010000>;
115                                 read-only;
116                         };
117
118                         partition@60000 {
119                                 compatible = "denx,uimage";
120                                 label = "firmware";
121                                 reg = <0x060000 0xfa0000>;
122                         };
123                 };
124         };
125 };
126
127 &pcie {
128         status = "okay";
129 };
130
131 &uart {
132         status = "okay";
133 };
134
135 &usb0 {
136         status = "okay";
137         vbus-supply = <&usb_vbus>;
138 };
139
140 &usb_phy0 {
141         status = "okay";
142 };
143
144 &usb1 {
145         status = "okay";
146 };
147
148 &usb_phy1 {
149         status = "okay";
150 };
151
152 &mdio0 {
153         status = "okay";
154         phy-mask = <0>;
155
156         phy0: ethernet-phy@0 {
157                 reg = <0>;
158                 phy-mode = "sgmii";
159                 qca,ar8327-initvals = <
160                         0x04 0x00080080 /* PORT0 PAD MODE CTRL */
161                         0x7c 0x0000007e /* PORT0_STATUS */
162                 >;
163         };
164 };
165
166 &eth0 {
167         status = "okay";
168
169         mtd-mac-address = <&art 0x0>;
170         phy-handle = <&phy0>;
171 };
172
173 &wmac {
174         status = "okay";
175         mtd-cal-data = <&art 0x1000>;
176         mtd-mac-address = <&art 0x1002>;
177 };