These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / arch / mips / boot / dts / brcm / bcm7346.dtsi
1 / {
2         #address-cells = <1>;
3         #size-cells = <1>;
4         compatible = "brcm,bcm7346";
5
6         cpus {
7                 #address-cells = <1>;
8                 #size-cells = <0>;
9
10                 mips-hpt-frequency = <163125000>;
11
12                 cpu@0 {
13                         compatible = "brcm,bmips5000";
14                         device_type = "cpu";
15                         reg = <0>;
16                 };
17
18                 cpu@1 {
19                         compatible = "brcm,bmips5000";
20                         device_type = "cpu";
21                         reg = <1>;
22                 };
23         };
24
25         aliases {
26                 uart0 = &uart0;
27                 uart1 = &uart1;
28                 uart2 = &uart2;
29         };
30
31         cpu_intc: cpu_intc {
32                 #address-cells = <0>;
33                 compatible = "mti,cpu-interrupt-controller";
34
35                 interrupt-controller;
36                 #interrupt-cells = <1>;
37         };
38
39         clocks {
40                 uart_clk: uart_clk {
41                         compatible = "fixed-clock";
42                         #clock-cells = <0>;
43                         clock-frequency = <81000000>;
44                 };
45         };
46
47         rdb {
48                 #address-cells = <1>;
49                 #size-cells = <1>;
50
51                 compatible = "simple-bus";
52                 ranges = <0 0x10000000 0x01000000>;
53
54                 periph_intc: periph_intc@411400 {
55                         compatible = "brcm,bcm7038-l1-intc";
56                         reg = <0x411400 0x30>, <0x411600 0x30>;
57
58                         interrupt-controller;
59                         #interrupt-cells = <1>;
60
61                         interrupt-parent = <&cpu_intc>;
62                         interrupts = <2>, <3>;
63                 };
64
65                 sun_l2_intc: sun_l2_intc@403000 {
66                         compatible = "brcm,l2-intc";
67                         reg = <0x403000 0x30>;
68                         interrupt-controller;
69                         #interrupt-cells = <1>;
70                         interrupt-parent = <&periph_intc>;
71                         interrupts = <51>;
72                 };
73
74                 gisb-arb@400000 {
75                         compatible = "brcm,bcm7400-gisb-arb";
76                         reg = <0x400000 0xdc>;
77                         native-endian;
78                         interrupt-parent = <&sun_l2_intc>;
79                         interrupts = <0>, <2>;
80                         brcm,gisb-arb-master-mask = <0x673>;
81                         brcm,gisb-arb-master-names = "ssp_0", "cpu_0", "bsp_0",
82                                                      "rdc_0", "raaga_0",
83                                                      "jtag_0", "svd_0";
84                 };
85
86                 upg_irq0_intc: upg_irq0_intc@406780 {
87                         compatible = "brcm,bcm7120-l2-intc";
88                         reg = <0x406780 0x8>;
89
90                         brcm,int-map-mask = <0x44>, <0xf000000>;
91                         brcm,int-fwd-mask = <0x70000>;
92
93                         interrupt-controller;
94                         #interrupt-cells = <1>;
95
96                         interrupt-parent = <&periph_intc>;
97                         interrupts = <59>, <57>;
98                         interrupt-names = "upg_main", "upg_bsc";
99                 };
100
101                 upg_aon_irq0_intc: upg_aon_irq0_intc@408b80 {
102                         compatible = "brcm,bcm7120-l2-intc";
103                         reg = <0x408b80 0x8>;
104
105                         brcm,int-map-mask = <0x40>, <0x8000000>, <0x100000>;
106                         brcm,int-fwd-mask = <0>;
107                         brcm,irq-can-wake;
108
109                         interrupt-controller;
110                         #interrupt-cells = <1>;
111
112                         interrupt-parent = <&periph_intc>;
113                         interrupts = <60>, <58>, <62>;
114                         interrupt-names = "upg_main_aon", "upg_bsc_aon",
115                                           "upg_spi";
116                 };
117
118                 sun_top_ctrl: syscon@404000 {
119                         compatible = "brcm,bcm7346-sun-top-ctrl", "syscon";
120                         reg = <0x404000 0x51c>;
121                         little-endian;
122                 };
123
124                 reboot {
125                         compatible = "brcm,brcmstb-reboot";
126                         syscon = <&sun_top_ctrl 0x304 0x308>;
127                 };
128
129                 uart0: serial@406900 {
130                         compatible = "ns16550a";
131                         reg = <0x406900 0x20>;
132                         reg-io-width = <0x4>;
133                         reg-shift = <0x2>;
134                         native-endian;
135                         interrupt-parent = <&periph_intc>;
136                         interrupts = <64>;
137                         clocks = <&uart_clk>;
138                         status = "disabled";
139                 };
140
141                 uart1: serial@406940 {
142                         compatible = "ns16550a";
143                         reg = <0x406940 0x20>;
144                         reg-io-width = <0x4>;
145                         reg-shift = <0x2>;
146                         native-endian;
147                         interrupt-parent = <&periph_intc>;
148                         interrupts = <65>;
149                         clocks = <&uart_clk>;
150                         status = "disabled";
151                 };
152
153                 uart2: serial@406980 {
154                         compatible = "ns16550a";
155                         reg = <0x406980 0x20>;
156                         reg-io-width = <0x4>;
157                         reg-shift = <0x2>;
158                         native-endian;
159                         interrupt-parent = <&periph_intc>;
160                         interrupts = <66>;
161                         clocks = <&uart_clk>;
162                         status = "disabled";
163                 };
164
165                 bsca: i2c@406200 {
166                       clock-frequency = <390000>;
167                       compatible = "brcm,brcmstb-i2c";
168                       interrupt-parent = <&upg_irq0_intc>;
169                       reg = <0x406200 0x58>;
170                       interrupts = <24>;
171                       interrupt-names = "upg_bsca";
172                       status = "disabled";
173                 };
174
175                 bscb: i2c@406280 {
176                       clock-frequency = <390000>;
177                       compatible = "brcm,brcmstb-i2c";
178                       interrupt-parent = <&upg_irq0_intc>;
179                       reg = <0x406280 0x58>;
180                       interrupts = <25>;
181                       interrupt-names = "upg_bscb";
182                       status = "disabled";
183                 };
184
185                 bscc: i2c@406300 {
186                       clock-frequency = <390000>;
187                       compatible = "brcm,brcmstb-i2c";
188                       interrupt-parent = <&upg_irq0_intc>;
189                       reg = <0x406300 0x58>;
190                       interrupts = <26>;
191                       interrupt-names = "upg_bscc";
192                       status = "disabled";
193                 };
194
195                 bscd: i2c@406380 {
196                       clock-frequency = <390000>;
197                       compatible = "brcm,brcmstb-i2c";
198                       interrupt-parent = <&upg_irq0_intc>;
199                       reg = <0x406380 0x58>;
200                       interrupts = <27>;
201                       interrupt-names = "upg_bscd";
202                       status = "disabled";
203                 };
204
205                 bsce: i2c@408980 {
206                       clock-frequency = <390000>;
207                       compatible = "brcm,brcmstb-i2c";
208                       interrupt-parent = <&upg_aon_irq0_intc>;
209                       reg = <0x408980 0x58>;
210                       interrupts = <27>;
211                       interrupt-names = "upg_bsce";
212                       status = "disabled";
213                 };
214
215                 enet0: ethernet@430000 {
216                         phy-mode = "internal";
217                         phy-handle = <&phy1>;
218                         mac-address = [ 00 10 18 36 23 1a ];
219                         compatible = "brcm,genet-v2";
220                         #address-cells = <0x1>;
221                         #size-cells = <0x1>;
222                         reg = <0x430000 0x4c8c>;
223                         interrupts = <24>, <25>;
224                         interrupt-parent = <&periph_intc>;
225                         status = "disabled";
226
227                         mdio@e14 {
228                                 compatible = "brcm,genet-mdio-v2";
229                                 #address-cells = <0x1>;
230                                 #size-cells = <0x0>;
231                                 reg = <0xe14 0x8>;
232
233                                 phy1: ethernet-phy@1 {
234                                         max-speed = <100>;
235                                         reg = <0x1>;
236                                         compatible = "brcm,40nm-ephy",
237                                                 "ethernet-phy-ieee802.3-c22";
238                                 };
239                         };
240                 };
241
242                 ehci0: usb@480300 {
243                         compatible = "brcm,bcm7346-ehci", "generic-ehci";
244                         reg = <0x480300 0x100>;
245                         native-endian;
246                         interrupt-parent = <&periph_intc>;
247                         interrupts = <68>;
248                         status = "disabled";
249                 };
250
251                 ohci0: usb@480400 {
252                         compatible = "brcm,bcm7346-ohci", "generic-ohci";
253                         reg = <0x480400 0x100>;
254                         native-endian;
255                         no-big-frame-no;
256                         interrupt-parent = <&periph_intc>;
257                         interrupts = <70>;
258                         status = "disabled";
259                 };
260
261                 ehci1: usb@480500 {
262                         compatible = "brcm,bcm7346-ehci", "generic-ehci";
263                         reg = <0x480500 0x100>;
264                         native-endian;
265                         interrupt-parent = <&periph_intc>;
266                         interrupts = <69>;
267                         status = "disabled";
268                 };
269
270                 ohci1: usb@480600 {
271                         compatible = "brcm,bcm7346-ohci", "generic-ohci";
272                         reg = <0x480600 0x100>;
273                         native-endian;
274                         no-big-frame-no;
275                         interrupt-parent = <&periph_intc>;
276                         interrupts = <71>;
277                         status = "disabled";
278                 };
279
280                 ehci2: usb@490300 {
281                         compatible = "brcm,bcm7346-ehci", "generic-ehci";
282                         reg = <0x490300 0x100>;
283                         native-endian;
284                         interrupt-parent = <&periph_intc>;
285                         interrupts = <73>;
286                         status = "disabled";
287                 };
288
289                 ohci2: usb@490400 {
290                         compatible = "brcm,bcm7346-ohci", "generic-ohci";
291                         reg = <0x490400 0x100>;
292                         native-endian;
293                         no-big-frame-no;
294                         interrupt-parent = <&periph_intc>;
295                         interrupts = <75>;
296                         status = "disabled";
297                 };
298
299                 ehci3: usb@490500 {
300                         compatible = "brcm,bcm7346-ehci", "generic-ehci";
301                         reg = <0x490500 0x100>;
302                         native-endian;
303                         interrupt-parent = <&periph_intc>;
304                         interrupts = <74>;
305                         status = "disabled";
306                 };
307
308                 ohci3: usb@490600 {
309                         compatible = "brcm,bcm7346-ohci", "generic-ohci";
310                         reg = <0x490600 0x100>;
311                         native-endian;
312                         no-big-frame-no;
313                         interrupt-parent = <&periph_intc>;
314                         interrupts = <76>;
315                         status = "disabled";
316                 };
317
318                 sata: sata@181000 {
319                         compatible = "brcm,bcm7425-ahci", "brcm,sata3-ahci";
320                         reg-names = "ahci", "top-ctrl";
321                         reg = <0x181000 0xa9c>, <0x180020 0x1c>;
322                         interrupt-parent = <&periph_intc>;
323                         interrupts = <40>;
324                         #address-cells = <1>;
325                         #size-cells = <0>;
326                         brcm,broken-ncq;
327                         brcm,broken-phy;
328                         status = "disabled";
329
330                         sata0: sata-port@0 {
331                                 reg = <0>;
332                                 phys = <&sata_phy0>;
333                         };
334
335                         sata1: sata-port@1 {
336                                 reg = <1>;
337                                 phys = <&sata_phy1>;
338                         };
339                 };
340
341                 sata_phy: sata-phy@1800000 {
342                         compatible = "brcm,bcm7425-sata-phy", "brcm,phy-sata3";
343                         reg = <0x180100 0x0eff>;
344                         reg-names = "phy";
345                         #address-cells = <1>;
346                         #size-cells = <0>;
347                         status = "disabled";
348
349                         sata_phy0: sata-phy@0 {
350                                 reg = <0>;
351                                 #phy-cells = <0>;
352                         };
353
354                         sata_phy1: sata-phy@1 {
355                                 reg = <1>;
356                                 #phy-cells = <0>;
357                         };
358                 };
359         };
360 };