~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/powerpc/boot/dts/fsp2.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  * Device Tree Source for FSP2
  3  *
  4  * Copyright 2010,2012 IBM Corp.
  5  *
  6  * This file is licensed under the terms of the GNU General Public
  7  * License version 2.  This program is licensed "as is" without
  8  * any warranty of any kind, whether express or implied.
  9  */
 10 
 11 
 12 /dts-v1/;
 13 
 14 / {
 15         #address-cells = <2>;
 16         #size-cells = <1>;
 17         model = "ibm,fsp2";
 18         compatible = "ibm,fsp2";
 19         dcr-parent = <&{/cpus/cpu@0}>;
 20 
 21         aliases {
 22                 ethernet0 = &EMAC0;
 23                 ethernet1 = &EMAC1;
 24                 serial0 = &UART0;
 25         };
 26 
 27         cpus {
 28                 #address-cells = <1>;
 29                 #size-cells = <0>;
 30 
 31                 cpu@0 {
 32                         device_type = "cpu";
 33                         model = "PowerPC, 476FSP2";
 34                         reg = <0x0>;
 35                         clock-frequency = <0>;    /* Filled in by cuboot */
 36                         timebase-frequency = <0>; /* Filled in by cuboot */
 37                         i-cache-line-size = <32>;
 38                         d-cache-line-size = <32>;
 39                         d-cache-size = <32768>;
 40                         i-cache-size = <32768>;
 41                         dcr-controller;
 42                         dcr-access-method = "native";
 43                 };
 44         };
 45 
 46         memory {
 47                 device_type = "memory";
 48                 reg = <0x00000000 0x00000000 0x00000000>; /* Filled in by
 49                                                              cuboot */
 50         };
 51 
 52         clocks {
 53                 mmc_clk: mmc_clk {
 54                         compatible = "fixed-clock";
 55                         #clock-cells = <0>;
 56                         clock-frequency = <50000000>;
 57                         clock-output-names = "mmc_clk";
 58                 };
 59         };
 60 
 61         UIC0: uic0 {
 62                 #address-cells = <0>;
 63                 #size-cells = <0>;
 64                 #interrupt-cells = <2>;
 65                 compatible = "ibm,uic";
 66                 interrupt-controller;
 67                 cell-index = <0>;
 68                 dcr-reg = <0x2c0 0x8>;
 69         };
 70 
 71         /* "interrupts" field is <bit level bit level>
 72            first pair is non-critical, second is critical */
 73         UIC1_0: uic1_0 {
 74                 #address-cells = <0>;
 75                 #size-cells = <0>;
 76                 #interrupt-cells = <2>;
 77 
 78                 compatible = "ibm,uic";
 79                 interrupt-controller;
 80                 cell-index = <1>;
 81                 dcr-reg = <0x2c8 0x8>;
 82                 interrupt-parent = <&UIC0>;
 83                 interrupts = <21 0x4 4 0x84>;
 84         };
 85 
 86         /* PSI and DMA */
 87         UIC1_1: uic1_1 {
 88                 #address-cells = <0>;
 89                 #size-cells = <0>;
 90                 #interrupt-cells = <2>;
 91 
 92                 compatible = "ibm,uic";
 93                 interrupt-controller;
 94                 cell-index = <2>;
 95                 dcr-reg = <0x350 0x8>;
 96                 interrupt-parent = <&UIC0>;
 97                 interrupts = <22 0x4 5 0x84>;
 98         };
 99 
100         /* Ethernet and USB */
101         UIC1_2: uic1_2 {
102                 #address-cells = <0>;
103                 #size-cells = <0>;
104                 #interrupt-cells = <2>;
105 
106                 compatible = "ibm,uic";
107                 interrupt-controller;
108                 cell-index = <3>;
109                 dcr-reg = <0x358 0x8>;
110                 interrupt-parent = <&UIC0>;
111                 interrupts = <23 0x4 6 0x84>;
112         };
113 
114         /* PLB Errors */
115         UIC1_3: uic1_3 {
116                 #address-cells = <0>;
117                 #size-cells = <0>;
118                 #interrupt-cells = <2>;
119 
120                 compatible = "ibm,uic";
121                 interrupt-controller;
122                 cell-index = <4>;
123                 dcr-reg = <0x360 0x8>;
124                 interrupt-parent = <&UIC0>;
125                 interrupts = <24 0x4 7 0x84>;
126         };
127 
128         UIC1_4: uic1_4 {
129                 #address-cells = <0>;
130                 #size-cells = <0>;
131                 #interrupt-cells = <2>;
132 
133                 compatible = "ibm,uic";
134                 interrupt-controller;
135                 cell-index = <5>;
136                 dcr-reg = <0x368 0x8>;
137                 interrupt-parent = <&UIC0>;
138                 interrupts = <25 0x4 8 0x84>;
139         };
140 
141         UIC1_5: uic1_5 {
142                 #address-cells = <0>;
143                 #size-cells = <0>;
144                 #interrupt-cells = <2>;
145 
146                 compatible = "ibm,uic";
147                 interrupt-controller;
148                 cell-index = <6>;
149                 dcr-reg = <0x370 0x8>;
150                 interrupt-parent = <&UIC0>;
151                 interrupts = <26 0x4 9 0x84>;
152         };
153 
154         /* 2nd level UICs for FSI */
155         UIC2_0: uic2_0 {
156                 #address-cells = <0>;
157                 #size-cells = <0>;
158                 #interrupt-cells = <2>;
159 
160                 compatible = "ibm,uic";
161                 interrupt-controller;
162                 cell-index = <7>;
163                 dcr-reg = <0x2d0 0x8>;
164                 interrupt-parent = <&UIC1_0>;
165                 interrupts = <16 0x4 0 0x84>;
166         };
167 
168         UIC2_1: uic2_1 {
169                 #address-cells = <0>;
170                 #size-cells = <0>;
171                 #interrupt-cells = <2>;
172 
173                 compatible = "ibm,uic";
174                 interrupt-controller;
175                 cell-index = <8>;
176                 dcr-reg = <0x2d8 0x8>;
177                 interrupt-parent = <&UIC1_0>;
178                 interrupts = <17 0x4 1 0x84>;
179         };
180 
181         UIC2_2: uic2_2 {
182                 #address-cells = <0>;
183                 #size-cells = <0>;
184                 #interrupt-cells = <2>;
185 
186                 compatible = "ibm,uic";
187                 interrupt-controller;
188                 cell-index = <9>;
189                 dcr-reg = <0x2e0 0x8>;
190                 interrupt-parent = <&UIC1_0>;
191                 interrupts = <18 0x4 2 0x84>;
192         };
193 
194         UIC2_3: uic2_3 {
195                 #address-cells = <0>;
196                 #size-cells = <0>;
197                 #interrupt-cells = <2>;
198 
199                 compatible = "ibm,uic";
200                 interrupt-controller;
201                 cell-index = <10>;
202                 dcr-reg = <0x2e8 0x8>;
203                 interrupt-parent = <&UIC1_0>;
204                 interrupts = <19 0x4 3 0x84>;
205         };
206 
207         UIC2_4: uic2_4 {
208                 #address-cells = <0>;
209                 #size-cells = <0>;
210                 #interrupt-cells = <2>;
211 
212                 compatible = "ibm,uic";
213                 interrupt-controller;
214                 cell-index = <11>;
215                 dcr-reg = <0x2f0 0x8>;
216                 interrupt-parent = <&UIC1_0>;
217                 interrupts = <20 0x4 4 0x84>;
218         };
219 
220         UIC2_5: uic2_5 {
221                 #address-cells = <0>;
222                 #size-cells = <0>;
223                 #interrupt-cells = <2>;
224 
225                 compatible = "ibm,uic";
226                 interrupt-controller;
227                 cell-index = <12>;
228                 dcr-reg = <0x2f8 0x8>;
229                 interrupt-parent = <&UIC1_0>;
230                 interrupts = <21 0x4 5 0x84>;
231         };
232 
233         UIC2_6: uic2_6 {
234                 #address-cells = <0>;
235                 #size-cells = <0>;
236                 #interrupt-cells = <2>;
237 
238                 compatible = "ibm,uic";
239                 interrupt-controller;
240                 cell-index = <13>;
241                 dcr-reg = <0x300 0x8>;
242                 interrupt-parent = <&UIC1_0>;
243                 interrupts = <22 0x4 6 0x84>;
244         };
245 
246         UIC2_7: uic2_7 {
247                 #address-cells = <0>;
248                 #size-cells = <0>;
249                 #interrupt-cells = <2>;
250 
251                 compatible = "ibm,uic";
252                 interrupt-controller;
253                 cell-index = <14>;
254                 dcr-reg = <0x308 0x8>;
255                 interrupt-parent = <&UIC1_0>;
256                 interrupts = <23 0x4 7 0x84>;
257         };
258 
259         UIC2_8: uic2_8 {
260                 #address-cells = <0>;
261                 #size-cells = <0>;
262                 #interrupt-cells = <2>;
263 
264                 compatible = "ibm,uic";
265                 interrupt-controller;
266                 cell-index = <15>;
267                 dcr-reg = <0x310 0x8>;
268                 interrupt-parent = <&UIC1_0>;
269                 interrupts = <24 0x4 8 0x84>;
270         };
271 
272         UIC2_9: uic2_9 {
273                 #address-cells = <0>;
274                 #size-cells = <0>;
275                 #interrupt-cells = <2>;
276 
277                 compatible = "ibm,uic";
278                 interrupt-controller;
279                 cell-index = <16>;
280                 dcr-reg = <0x318 0x8>;
281                 interrupt-parent = <&UIC1_0>;
282                 interrupts = <25 0x4 9 0x84>;
283         };
284 
285         UIC2_10: uic2_10 {
286                 #address-cells = <0>;
287                 #size-cells = <0>;
288                 #interrupt-cells = <2>;
289 
290                 compatible = "ibm,uic";
291                 interrupt-controller;
292                 cell-index = <17>;
293                 dcr-reg = <0x320 0x8>;
294                 interrupt-parent = <&UIC1_0>;
295                 interrupts = <26 0x4 10 0x84>;
296         };
297 
298         UIC2_11: uic2_11 {
299                 #address-cells = <0>;
300                 #size-cells = <0>;
301                 #interrupt-cells = <2>;
302 
303                 compatible = "ibm,uic";
304                 interrupt-controller;
305                 cell-index = <18>;
306                 dcr-reg = <0x328 0x8>;
307                 interrupt-parent = <&UIC1_0>;
308                 interrupts = <27 0x4 11 0x84>;
309         };
310 
311         UIC2_12: uic2_12 {
312                 #address-cells = <0>;
313                 #size-cells = <0>;
314                 #interrupt-cells = <2>;
315 
316                 compatible = "ibm,uic";
317                 interrupt-controller;
318                 cell-index = <19>;
319                 dcr-reg = <0x330 0x8>;
320                 interrupt-parent = <&UIC1_0>;
321                 interrupts = <28 0x4 12 0x84>;
322         };
323 
324         UIC2_13: uic2_13 {
325                 #address-cells = <0>;
326                 #size-cells = <0>;
327                 #interrupt-cells = <2>;
328 
329                 compatible = "ibm,uic";
330                 interrupt-controller;
331                 cell-index = <20>;
332                 dcr-reg = <0x338 0x8>;
333                 interrupt-parent = <&UIC1_0>;
334                 interrupts = <29 0x4 13 0x84>;
335         };
336 
337         UIC2_14: uic2_14 {
338                 #address-cells = <0>;
339                 #size-cells = <0>;
340                 #interrupt-cells = <2>;
341 
342                 compatible = "ibm,uic";
343                 interrupt-controller;
344                 cell-index = <21>;
345                 dcr-reg = <0x340 0x8>;
346                 interrupt-parent = <&UIC1_0>;
347                 interrupts = <30 0x4 14 0x84>;
348         };
349 
350         UIC2_15: uic2_15 {
351                 #address-cells = <0>;
352                 #size-cells = <0>;
353                 #interrupt-cells = <2>;
354 
355                 compatible = "ibm,uic";
356                 interrupt-controller;
357                 cell-index = <22>;
358                 dcr-reg = <0x348 0x8>;
359                 interrupt-parent = <&UIC1_0>;
360                 interrupts = <31 0x4 15 0x84>;
361         };
362 
363         plb6 {
364                 compatible = "ibm,plb6";
365                 #address-cells = <2>;
366                 #size-cells = <1>;
367                 ranges;
368 
369                 MCW0: memory-controller-wrapper {
370                         compatible = "ibm,cw-476fsp2";
371                         dcr-reg = <0x11111800 0x40>;
372                 };
373 
374                 MCIF0: memory-controller {
375                         compatible = "ibm,sdram-476fsp2", "ibm,sdram-4xx-ddr3";
376                         dcr-reg = <0x11120000 0x10000>;
377                         mcer-device = <&MCW0>;
378                         interrupt-parent = <&UIC0>;
379                         interrupts = <10 0x84   /* ECC UE */
380                                       11 0x84>; /* ECC CE */
381                 };
382         };
383 
384         plb4 {
385                 compatible = "ibm,plb4";
386                 #address-cells = <1>;
387                 #size-cells = <1>;
388                 ranges = <0x00000000 0x00000010 0x00000000 0x80000000
389                           0x80000000 0x00000010 0x80000000 0x80000000>;
390                 clock-frequency = <333333334>;
391 
392                 plb6-system-hung-irq {
393                         compatible = "ibm,bus-error-irq";
394                         #interrupt-cells = <2>;
395                         interrupt-parent = <&UIC0>;
396                         interrupts = <0 0x84>;
397                 };
398 
399                 l2-error-irq {
400                         compatible = "ibm,bus-error-irq";
401                         #interrupt-cells = <2>;
402                         interrupt-parent = <&UIC0>;
403                         interrupts = <20 0x84>;
404                 };
405 
406                 plb6-plb4-irq {
407                         compatible = "ibm,bus-error-irq";
408                         #interrupt-cells = <2>;
409                         interrupt-parent = <&UIC0>;
410                         interrupts = <1 0x84>;
411                 };
412 
413                 plb4-ahb-irq {
414                         compatible = "ibm,bus-error-irq";
415                         #interrupt-cells = <2>;
416                         interrupt-parent = <&UIC1_3>;
417                         interrupts = <20 0x84>;
418                 };
419 
420                 opbd-error-irq {
421                         compatible = "ibm,opbd-error-irq";
422                         #interrupt-cells = <2>;
423                         interrupt-parent = <&UIC1_4>;
424                         interrupts = <5 0x84>;
425                 };
426 
427                 cmu-error-irq {
428                         compatible = "ibm,cmu-error-irq";
429                         #interrupt-cells = <2>;
430                         interrupt-parent = <&UIC0>;
431                         interrupts = <28 0x84>;
432                 };
433 
434                 conf-error-irq {
435                         compatible = "ibm,conf-error-irq";
436                         #interrupt-cells = <2>;
437                         interrupt-parent = <&UIC1_4>;
438                         interrupts = <11 0x84>;
439                 };
440 
441                 mc-ue-irq {
442                         compatible = "ibm,mc-ue-irq";
443                         #interrupt-cells = <2>;
444                         interrupt-parent = <&UIC0>;
445                         interrupts = <10 0x84>;
446                 };
447 
448                 reset-warning-irq {
449                         compatible = "ibm,reset-warning-irq";
450                         #interrupt-cells = <2>;
451                         interrupt-parent = <&UIC0>;
452                         interrupts = <17 0x84>;
453                 };
454 
455                 MAL0: mcmal0 {
456                         #interrupt-cells = <1>;
457                         #address-cells = <0>;
458                         #size-cells = <0>;
459                         compatible = "ibm,mcmal";
460                         dcr-reg = <0x80 0x80>;
461                         num-tx-chans = <1>;
462                         num-rx-chans = <1>;
463                         interrupt-parent = <&MAL0>;
464                         interrupts = <0 1 2 3 4>;
465                         /* index interrupt-parent interrupt# type */
466                         interrupt-map = </*TXEOB*/ 0 &UIC1_2 4 0x4
467                                          /*RXEOB*/ 1 &UIC1_2 3 0x4
468                                          /*SERR*/  2 &UIC1_2 7 0x4
469                                          /*TXDE*/  3 &UIC1_2 6 0x4
470                                          /*RXDE*/  4 &UIC1_2 5 0x4>;
471                 };
472 
473                 MAL1: mcmal1 {
474                         #interrupt-cells = <1>;
475                         #address-cells = <0>;
476                         #size-cells = <0>;
477                         compatible = "ibm,mcmal";
478                         dcr-reg = <0x100 0x80>;
479                         num-tx-chans = <1>;
480                         num-rx-chans = <1>;
481                         interrupt-parent = <&MAL1>;
482                         interrupts = <0 1 2 3 4>;
483                         /* index interrupt-parent interrupt# type */
484                         interrupt-map = </*TXEOB*/ 0 &UIC1_2 12 0x4
485                                          /*RXEOB*/ 1 &UIC1_2 11 0x4
486                                          /*SERR*/  2 &UIC1_2 15 0x4
487                                          /*TXDE*/  3 &UIC1_2 14 0x4
488                                          /*RXDE*/  4 &UIC1_2 13 0x4>;
489                 };
490 
491                 mmc0: mmc@20c0000 {
492                         compatible      = "st,sdhci-stih407", "st,sdhci";
493                         reg             = <0x020c0000 0x20000>;
494                         reg-names       = "mmc";
495                         interrupts      = <21 0x4>;
496                         interrupt-parent = <&UIC1_3>;
497                         interrupt-names = "mmcirq";
498                         pinctrl-names   = "default";
499                         pinctrl-0       = <>;
500                         clock-names     = "mmc";
501                         clocks          = <&mmc_clk>;
502                         bus-width       = <4>;
503                         non-removable;
504                         sd-uhs-sdr50;
505                         sd-uhs-sdr104;
506                         sd-uhs-ddr50;
507                 };
508 
509                 opb {
510                         compatible = "ibm,opb";
511                         #address-cells = <1>;
512                         #size-cells = <1>;
513                         ranges; // pass-thru to parent bus
514                         clock-frequency = <83333334>;
515 
516                         EMAC0: ethernet@b0000000 {
517                                 linux,network-index = <0>;
518                                 device_type = "network";
519                                 compatible = "ibm,emac4sync";
520                                 has-inverted-stacr-oc;
521                                 interrupt-parent = <&UIC1_2>;
522                                 interrupts = <1 0x4 0 0x4>;
523                                 reg = <0xb0000000 0x100>;
524                                 local-mac-address = [000000000000]; /* Filled in by
525                                                                cuboot */
526                                 mal-device = <&MAL0>;
527                                 mal-tx-channel = <0>;
528                                 mal-rx-channel = <0>;
529                                 cell-index = <0>;
530                                 max-frame-size = <1500>;
531                                 rx-fifo-size = <4096>;
532                                 tx-fifo-size = <4096>;
533                                 rx-fifo-size-gige = <16384>;
534                                 tx-fifo-size-gige = <8192>;
535                                 phy-address = <1>;
536                                 phy-mode = "rgmii";
537                                 phy-map = <00000003>;
538                                 rgmii-device = <&RGMII>;
539                                 rgmii-channel = <0>;
540                         };
541 
542                         EMAC1: ethernet@b0000100 {
543                                 linux,network-index = <1>;
544                                 device_type = "network";
545                                 compatible = "ibm,emac4sync";
546                                 has-inverted-stacr-oc;
547                                 interrupt-parent = <&UIC1_2>;
548                                 interrupts = <9 0x4 8 0x4>;
549                                 reg = <0xb0000100 0x100>;
550                                 local-mac-address = [000000000000]; /* Filled in by
551                                                                cuboot */
552                                 mal-device = <&MAL1>;
553                                 mal-tx-channel = <0>;
554                                 mal-rx-channel = <0>;
555                                 cell-index = <1>;
556                                 max-frame-size = <1500>;
557                                 rx-fifo-size = <4096>;
558                                 tx-fifo-size = <4096>;
559                                 rx-fifo-size-gige = <16384>;
560                                 tx-fifo-size-gige = <8192>;
561                                 phy-address = <2>;
562                                 phy-mode = "rgmii";
563                                 phy-map = <00000003>;
564                                 rgmii-device = <&RGMII>;
565                                 rgmii-channel = <1>;
566                         };
567 
568                         RGMII: rgmii@b0000600 {
569                                 compatible = "ibm,rgmii";
570                                 has-mdio;
571                                 reg = <0xb0000600 0x8>;
572                         };
573 
574                         UART0: serial@b0020000 {
575                                 device_type = "serial";
576                                 compatible = "ns16550";
577                                 reg = <0xb0020000 0x8>;
578                                 virtual-reg = <0xb0020000>;
579                                 clock-frequency = <20833333>;
580                                 current-speed = <115200>;
581                                 interrupt-parent = <&UIC0>;
582                                 interrupts = <31 0x4>;
583                         };
584                 };
585 
586                 OHCI1: ohci@2040000 {
587                         compatible = "ohci-le";
588                         reg = <0x02040000 0xa0>;
589                         interrupt-parent = <&UIC1_3>;
590                         interrupts = <28 0x8 29 0x8>;
591                 };
592 
593                 OHCI2: ohci@2080000 {
594                         compatible = "ohci-le";
595                         reg = <0x02080000 0xa0>;
596                         interrupt-parent = <&UIC1_3>;
597                         interrupts = <30 0x8 31 0x8>;
598                 };
599 
600                 EHCI: ehci@2000000 {
601                         compatible = "usb-ehci";
602                         reg = <0x02000000 0xa4>;
603                         interrupt-parent = <&UIC1_3>;
604                         interrupts = <23 0x4>;
605                 };
606 
607         };
608 
609         chosen {
610                 stdout-path = "/plb/opb/serial@b0020000";
611                 bootargs = "console=ttyS0,115200 rw log_buf_len=32768 debug";
612         };
613 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php