aed8e205adacdbe6aa5e2e6a7124c345f5149852
[openwrt/openwrt.git] / target / linux / ath79 / dts / ar9330.dtsi
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2
3 #include "ath79.dtsi"
4
5 / {
6 compatible = "qca,ar9330";
7
8 #address-cells = <1>;
9 #size-cells = <1>;
10
11 aliases {
12 serial0 = &uart;
13 };
14
15 cpus {
16 #address-cells = <1>;
17 #size-cells = <0>;
18
19 cpu@0 {
20 device_type = "cpu";
21 compatible = "mips,mips24Kc";
22 clocks = <&pll ATH79_CLK_CPU>;
23 reg = <0>;
24 };
25 };
26
27 chosen {
28 bootargs = "console=ttyATH0,115200";
29 };
30
31 ahb {
32 apb {
33 ddr_ctrl: memory-controller@18000000 {
34 compatible = "qca,ar7240-ddr-controller";
35 reg = <0x18000000 0x100>;
36
37 #qca,ddr-wb-channel-cells = <1>;
38 };
39
40 uart: uart@18020000 {
41 compatible = "qca,ar9330-uart";
42 reg = <0x18020000 0x14>;
43
44 interrupts = <3>;
45
46 clocks = <&pll ATH79_CLK_REF>;
47 clock-names = "uart";
48 };
49
50 gpio: gpio@18040000 {
51 compatible = "qca,ar7100-gpio";
52 reg = <0x18040000 0x28>;
53 interrupts = <2>;
54
55 ngpios = <30>;
56
57 gpio-controller;
58 #gpio-cells = <2>;
59
60 interrupt-controller;
61 #interrupt-cells = <2>;
62 };
63
64 pinmux: pinmux@18040028 {
65 compatible = "pinctrl-single";
66 reg = <0x18040028 0x8>;
67
68 pinctrl-single,bit-per-mux;
69 pinctrl-single,register-width = <32>;
70 pinctrl-single,function-mask = <0x1>;
71 #pinctrl-cells = <2>;
72
73 jtag_disable_pins: pinmux_jtag_disable_pins {
74 pinctrl-single,bits = <0x0 0x1 0x1>;
75 };
76
77 switch_led_disable_pins: pinmux_switch_led_disable_pins {
78 pinctrl-single,bits = <0x0 0x0 0xf8>;
79 };
80 };
81
82 pll: pll-controller@18050000 {
83 compatible = "qca,ar9330-pll";
84 reg = <0x18050000 0x100>;
85
86 #clock-cells = <1>;
87 };
88
89 wdt: wdt@18060008 {
90 compatible = "qca,ar7130-wdt";
91 reg = <0x18060008 0x8>;
92
93 interrupts = <4>;
94
95 clocks = <&pll ATH79_CLK_AHB>;
96 clock-names = "wdt";
97 };
98
99 rst: reset-controller@1806001c {
100 compatible = "qca,ar7100-reset";
101 reg = <0x1806001c 0x4>;
102
103 #reset-cells = <1>;
104 };
105 };
106
107 usb: usb@1b000000 {
108 compatible = "chipidea,usb2";
109 reg = <0x1b000000 0x200>;
110
111 interrupts = <3>;
112 resets = <&rst 5>;
113 reset-names = "usb-host";
114
115 phy-names = "usb-phy";
116 phys = <&usb_phy>;
117
118 status = "disabled";
119
120 #address-cells = <1>;
121 #size-cells = <0>;
122 };
123
124 spi: spi@1f000000 {
125 compatible = "qca,ar934x-spi";
126 reg = <0x1f000000 0x1c>;
127
128 clocks = <&pll ATH79_CLK_AHB>;
129
130 #address-cells = <1>;
131 #size-cells = <0>;
132
133 status = "disabled";
134 };
135
136 gmac: gmac@18070000 {
137 compatible = "qca,ar9330-gmac";
138 reg = <0x18070000 0x4>;
139 };
140
141 wmac: wmac@18100000 {
142 compatible = "qca,ar9330-wmac";
143 reg = <0x18100000 0x20000>;
144
145 interrupts = <2>;
146
147 status = "disabled";
148 };
149 };
150
151 usb_phy: usb-phy {
152 compatible = "qca,ar7200-usb-phy";
153
154 reset-names = "usb-phy", "usb-suspend-override";
155 resets = <&rst 4>, <&rst 3>;
156
157 #phy-cells = <0>;
158
159 status = "disabled";
160 };
161 };
162
163 &cpuintc {
164 qca,ddr-wb-channel-interrupts = <2>, <3>;
165 qca,ddr-wb-channels = <&ddr_ctrl 3>, <&ddr_ctrl 2>;
166 };
167
168 &eth0 {
169 compatible = "qca,ar9330-eth", "syscon";
170
171 pll-data = <0x00110000 0x00001099 0x00991099>;
172
173 resets = <&rst 9>;
174 reset-names = "mac";
175 phy-handle = <&swphy4>;
176 };
177
178 &mdio1 {
179 status = "okay";
180 compatible = "qca,ar9330-mdio";
181
182 resets = <&rst 23>;
183 reset-names = "mdio";
184 builtin-switch;
185
186 builtin_switch: switch0@1f {
187 compatible = "qca,ar7240sw";
188 reg = <0x1f>;
189 resets = <&rst 8>;
190 reset-names = "switch";
191 qca,mib-poll-interval = <500>;
192
193 mdio-bus {
194 #address-cells = <1>;
195 #size-cells = <0>;
196
197 swphy4: ethernet-phy@4 {
198 reg = <4>;
199 phy-mode = "mii";
200 };
201 };
202 };
203 };
204
205 &eth1 {
206 compatible = "qca,ar9330-eth", "syscon";
207
208 pll-data = <0x00110000 0x00001099 0x00991099>;
209 phy-mode = "gmii";
210
211 resets = <&rst 13>;
212 reset-names = "mac";
213
214 fixed-link {
215 speed = <1000>;
216 full-duplex;
217 };
218 };