brcm63xx: add uart nodes
[openwrt/staging/lynxis.git] / target / linux / brcm63xx / dts / bcm6362.dtsi
1 / {
2 #address-cells = <1>;
3 #size-cells = <1>;
4 compatible = "brcm,bcm6362";
5
6 aliases {
7 pinctrl = &pinctrl;
8 serial0 = &uart0;
9 serial1 = &uart1;
10 spi0 = &lsspi;
11 spi1 = &hsspi;
12 };
13
14 cpus {
15 #address-cells = <1>;
16 #size-cells = <0>;
17
18 cpu@0 {
19 compatible = "brcm,bmips4350", "mips,mips4Kc";
20 device_type = "cpu";
21 reg = <0>;
22 };
23
24 cpu@1 {
25 compatible = "brcm,bmips4350", "mips,mips4Kc";
26 device_type = "cpu";
27 reg = <1>;
28 };
29 };
30
31 cpu_intc: interrupt-controller {
32 #address-cells = <0>;
33 compatible = "mti,cpu-interrupt-controller";
34
35 interrupt-controller;
36 #interrupt-cells = <1>;
37 };
38
39 memory { device_type = "memory"; reg = <0 0>; };
40
41 ubus@10000000 {
42 #address-cells = <1>;
43 #size-cells = <1>;
44 ranges;
45 compatible = "simple-bus";
46 interrupt-parent = <&periph_intc>;
47
48 ext_intc: interrupt-controller@10000018 {
49 compatible = "brcm,bcm6345-ext-intc";
50 reg = <0x10000018 0x4>;
51
52 interrupt-controller;
53 #interrupt-cells = <2>;
54
55 interrupts = <40>, <41>, <42>, <43>;
56 };
57
58 periph_intc: interrupt-controller@10000020 {
59 compatible = "brcm,bcm6345-l1-intc";
60 reg = <0x10000020 0x10>,
61 <0x10000030 0x10>;
62
63 interrupt-controller;
64 #interrupt-cells = <1>;
65
66 interrupt-parent = <&cpu_intc>;
67 interrupts = <2>, <3>;
68 };
69
70 pinctrl: pin-controller@10000080 {
71 compatible = "brcm,bcm6362-pinctrl";
72 reg = <0x10000080 0x8>,
73 <0x10000088 0x8>,
74 <0x10000090 0x4>,
75 <0x10000098 0x4>,
76 <0x1000009c 0x4>,
77 <0x100000b8 0x4>;
78 reg-names = "dirout", "dat", "led",
79 "mode", "ctrl", "basemode";
80
81 gpio-controller;
82 #gpio-cells = <2>;
83
84 interrupt-parent = <&ext_intc>;
85 interrupts = <0 0>, <1 0>, <2 0>, <3 0>;
86 interrupt-names = "gpio24", "gpio25",
87 "gpio26", "gpio27";
88
89 pinctrl_usb_device_led: usb_device_led {
90 function = "usb_device_led";
91 pins = "gpio0";
92 };
93
94 pinctrl_sys_irq: sys_irq {
95 function = "sys_irq";
96 pins = "gpio1";
97 };
98
99 pinctrl_serial_led: serial_led {
100 pinctrl_serial_led_clk: serial_led_clk {
101 function = "serial_led_clk";
102 pins = "gpio2";
103 };
104
105 pinctrl_serial_led_data: serial_led_data {
106 function = "serial_led_data";
107 pins = "gpio3";
108 };
109 };
110
111 pinctrl_robosw_led_data: robosw_led_data {
112 function = "robosw_led_data";
113 pins = "gpio4";
114 };
115
116 pinctrl_robosw_led_clk: robosw_led_clk {
117 function = "robosw_led_clk";
118 pins = "gpio5";
119 };
120
121 pinctrl_robosw_led0: robosw_led0 {
122 function = "robosw_led0";
123 pins = "gpio6";
124 };
125
126 pinctrl_robosw_led1: robosw_led1 {
127 function = "robosw_led1";
128 pins = "gpio7";
129 };
130
131 pinctrl_inet_led: inet_led {
132 function = "inet_led";
133 pins = "gpio8";
134 };
135
136 pinctrl_spi_cs2: spi_cs2 {
137 function = "spi_cs2";
138 pins = "gpio9";
139 };
140
141 pinctrl_spi_cs3: spi_cs3 {
142 function = "spi_cs3";
143 pins = "gpio10";
144 };
145
146 pinctrl_ntr_pulse: ntr_pulse {
147 function = "ntr_pulse";
148 pins = "gpio11";
149 };
150
151 pinctrl_uart1_scts: uart1_scts {
152 function = "uart1_scts";
153 pins = "gpio12";
154 };
155
156 pinctrl_uart1_srts: uart1_srts {
157 function = "uart1_srts";
158 pins = "gpio13";
159 };
160
161
162 pinctrl_uart1: uart1 {
163 pinctrl_uart1_sdin: uart1_sdin {
164 function = "uart1_sdin";
165 pins = "gpio14";
166 };
167
168 pinctrl_uart1_sdout: uart1_sdout {
169 function = "uart1_sdout";
170 pins = "gpio15";
171 };
172 };
173
174 pinctrl_adsl_spi: adsl_spi {
175 pinctrl_adsl_spi_miso: adsl_spi_miso {
176 function = "adsl_spi_miso";
177 pins = "gpio16";
178 };
179
180 pinctrl_adsl_spi_mosi: adsl_spi_mosi {
181 function = "adsl_spi_mosi";
182 pins = "gpio17";
183 };
184
185 pinctrl_adsl_spi_clk: adsl_spi_clk {
186 function = "adsl_spi_clk";
187 pins = "gpio18";
188 };
189
190 pinctrl_adsl_spi_cs: adsl_spi_cs {
191 function = "adsl_spi_cs";
192 pins = "gpio19";
193 };
194 };
195
196 pinctrl_ephy0_led: ephy0_led {
197 function = "ephy0_led";
198 pins = "gpio20";
199 };
200
201 pinctrl_ephy1_led: ephy1_led {
202 function = "ephy1_led";
203 pins = "gpio21";
204 };
205
206 pinctrl_ephy2_led: ephy2_led {
207 function = "ephy2_led";
208 pins = "gpio22";
209 };
210
211 pinctrl_ephy3_led: ephy3_led {
212 function = "ephy3_led";
213 pins = "gpio23";
214 };
215
216 pinctrl_ext_irq0: ext_irq0 {
217 function = "ext_irq0";
218 pins = "gpio24";
219 };
220
221 pinctrl_ext_irq1: ext_irq1 {
222 function = "ext_irq1";
223 pins = "gpio25";
224 };
225
226 pinctrl_ext_irq2: ext_irq2 {
227 function = "ext_irq2";
228 pins = "gpio26";
229 };
230
231 pinctrl_ext_irq3: ext_irq3 {
232 function = "ext_irq3";
233 pins = "gpio27";
234 };
235
236 pinctrl_nand: nand {
237 function = "nand";
238 group = "nand_grp";
239 };
240 };
241
242 uart0: serial@10000100 {
243 compatible = "brcm,bcm6345-uart";
244 reg = <0x10000100 0x18>;
245
246 interrupt-parent = <&periph_intc>;
247 interrupts = <3>;
248
249 /* clocks = <&periph_clk>; */
250 /* clock-names = "refclk"; */
251
252 status = "disabled";
253 };
254
255 uart1: serial@10000120 {
256 compatible = "brcm,bcm6345-uart";
257 reg = <0x10000120 0x18>;
258
259 interrupt-parent = <&periph_intc>;
260 interrupts = <4>;
261
262 /* clocks = <&periph_clk>; */
263 /* clock-names = "refclk"; */
264
265 status = "disabled";
266 };
267
268 lsspi: spi@10000800 {
269 #address-cells = <1>;
270 #size-cells = <0>;
271 compatible = "brcm,bcm6358-spi";
272 reg = <0x10000800 0x70c>;
273 interrupts = <2>;
274 /* clocks = <&clkctl 15>; */
275 };
276
277 hsspi: spi@10001000 {
278 #address-cells = <1>;
279 #size-cells = <0>;
280 compatible = "brcm,bcm6328-hsspi";
281 reg = <0x10001000 0x600>;
282 interrupts = <5>;
283 /* clocks = <&clkctl 16>; */
284 };
285
286 leds: led-controller@10001900 {
287 #address-cells = <1>;
288 #size-cells = <0>;
289 compatible = "brcm,bcm6328-leds";
290 reg = <0x10001900 0x24>;
291 status = "disabled";
292 };
293 };
294 };