ath79: split Teltonika RUT955 to support other RUT9xx models
[openwrt/staging/wigyori.git] / target / linux / ath79 / dts / ar9344_teltonika_rut955.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 /dts-v1/;
3
4 #include "ar9344_teltonika_rut9xx.dtsi"
5
6 / {
7 model = "Teltonika RUT955";
8 compatible = "teltonika,rut955", "teltonika,rut9xx", "qca,ar9344";
9
10 aliases {
11 led-boot = &led_system_green;
12 led-failsafe = &led_system_red;
13 led-running = &led_system_green;
14 led-upgrade = &led_system_red;
15 };
16
17 leds {
18 compatible = "gpio-leds";
19
20 signal0 {
21 label = "rut955:green:signal0";
22 gpios = <&gpio_ext 0 GPIO_ACTIVE_HIGH>;
23 };
24
25 signal1 {
26 label = "rut955:green:signal1";
27 gpios = <&gpio_ext 1 GPIO_ACTIVE_HIGH>;
28 };
29
30 signal2 {
31 label = "rut955:green:signal2";
32 gpios = <&gpio_ext 2 GPIO_ACTIVE_HIGH>;
33 };
34
35 signal3 {
36 label = "rut955:green:signal3";
37 gpios = <&gpio_ext 3 GPIO_ACTIVE_HIGH>;
38 };
39
40 signal4 {
41 label = "rut955:green:signal4";
42 gpios = <&gpio_ext 4 GPIO_ACTIVE_HIGH>;
43 };
44
45 led_system_red: system_red {
46 label = "rut955:red:system";
47 gpios = <&gpio_ext 5 GPIO_ACTIVE_HIGH>;
48 };
49
50 led_system_green: system_green {
51 label = "rut955:green:system";
52 gpios = <&gpio_ext 6 GPIO_ACTIVE_HIGH>;
53 default-state = "on";
54 };
55 };
56 };
57
58 &gpio {
59 pinctrl-names = "default";
60 pinctrl-0 = <&jtag_disable_pins>;
61
62 gpio-line-names = "RS485_D", "led_wan", "DIN3", "mmc_cs",
63 "ext_sck", "", "", "",
64 "", "", "", "",
65 "ext_mosi", "led_lan2", "led_lan1", "",
66 "i2c_scl", "i2c_sda", "", "DIN2",
67 "ext_cs", "DIN1", "led_lan3", "",
68 "", "", "", "",
69 "", "", "", "";
70
71 ext_sck {
72 gpio-hog;
73 gpios = <4 GPIO_ACTIVE_HIGH>;
74 output-high;
75 line-name = "rut955:ext:sck";
76 };
77
78 ext_mosi {
79 gpio-hog;
80 gpios = <12 GPIO_ACTIVE_HIGH>;
81 output-high;
82 line-name = "rut955:ext:mosi";
83 };
84
85 ext_cs {
86 gpio-hog;
87 gpios = <20 GPIO_ACTIVE_HIGH>;
88 output-low;
89 line-name = "rut955:ext:cs";
90 };
91
92 mmc_cs {
93 gpio-hog;
94 gpios = <3 GPIO_ACTIVE_HIGH>;
95 output-high;
96 line-name = "rut955:mmc:cs";
97 };
98
99 uart1_td {
100 gpio-hog;
101 gpios = <18 GPIO_ACTIVE_HIGH>;
102 output-high;
103 line-name = "rut955:uart1:td";
104 };
105
106 uart1_rd {
107 gpio-hog;
108 gpios = <11 GPIO_ACTIVE_LOW>;
109 input;
110 line-name = "rut955:uart1:rd";
111 };
112
113 led_wan {
114 gpio-hog;
115 gpios = <1 GPIO_ACTIVE_HIGH>;
116 output-high;
117 line-name = "rut955:led:wan";
118 };
119
120 led_lan2 {
121 gpio-hog;
122 gpios = <13 GPIO_ACTIVE_HIGH>;
123 output-high;
124 line-name = "rut955:led:lan2";
125 };
126
127 led_lan1 {
128 gpio-hog;
129 gpios = <14 GPIO_ACTIVE_HIGH>;
130 output-high;
131 line-name = "rut955:led:lan1";
132 };
133
134 led_lan3 {
135 gpio-hog;
136 gpios = <22 GPIO_ACTIVE_HIGH>;
137 output-high;
138 line-name = "rut955:led:lan3";
139 };
140 };
141
142 &spi {
143 status = "okay";
144
145 num-cs = <3>;
146 pinctrl-names = "default";
147 pinctrl-0 = <&pmx_spi>, <&pmx_spi_ext>;
148
149 gpio_ext: gpio_ext@2 {
150 compatible = "fairchild,74hc595";
151 reg = <2>;
152 gpio-controller;
153 #gpio-cells = <2>;
154 registers-number = <2>;
155 spi-max-frequency = <10000000>;
156 gpio-line-names = "signal_bar0", "signal_bar1", "signal_bar2", "signal_bar3",
157 "signal_bar4", "status_red", "status_green", "sim_sel",
158 "DOUT1", "DOUT2", "modem_vbus", "modem_rst",
159 "DOUT3", "RS485_R", "SDCS", "HWRST";
160 };
161 };
162
163 &hs_uart {
164 dtr-gpios = <&gpio_ext 13 GPIO_ACTIVE_HIGH>;
165 }
166
167 &eth0 {
168 status = "okay";
169
170 phy-handle = <&swphy4>;
171
172 mtd-mac-address = <&config 0x0>;
173 mtd-mac-address-increment = <1>;
174 };
175
176 &eth1 {
177 status = "okay";
178
179 mtd-mac-address = <&config 0x0>;
180 };
181
182 &builtin_switch {
183 pinctrl-names = "default";
184 pinctrl-0 = <&pmx_leds_switch>;
185 };
186
187 &pinmux {
188 pmx_spi_ext: spi_ext {
189 // 2nd SCK on GPIO 4, 2nd MOSI on GPIO 12, SPI_CS2 on GPIO 20
190 pinctrl-single,bits = <0x4 0x0a 0xff>,
191 <0xc 0x0b 0xff>,
192 <0x14 0x08 0xff>;
193 };
194 };