GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm / boot / dts / aspeed-bmc-opp-mihawk.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /dts-v1/;
3 #include "aspeed-g5.dtsi"
4 #include <dt-bindings/gpio/aspeed-gpio.h>
5 #include <dt-bindings/leds/leds-pca955x.h>
6
7 / {
8         model = "Mihawk BMC";
9         compatible = "ibm,mihawk-bmc", "aspeed,ast2500";
10
11         aliases {
12                 i2c215 = &bus6_mux215;
13                 i2c216 = &bus6_mux216;
14                 i2c217 = &bus6_mux217;
15                 i2c218 = &bus6_mux218;
16                 i2c219 = &bus6_mux219;
17                 i2c220 = &bus6_mux220;
18                 i2c221 = &bus6_mux221;
19                 i2c222 = &bus6_mux222;
20                 i2c223 = &bus7_mux223;
21                 i2c224 = &bus7_mux224;
22                 i2c225 = &bus7_mux225;
23                 i2c226 = &bus7_mux226;
24                 i2c227 = &bus7_mux227;
25                 i2c228 = &bus7_mux228;
26                 i2c229 = &bus7_mux229;
27                 i2c230 = &bus7_mux230;
28                 i2c231 = &bus9_mux231;
29                 i2c232 = &bus9_mux232;
30                 i2c233 = &bus9_mux233;
31                 i2c234 = &bus9_mux234;
32                 i2c235 = &bus9_mux235;
33                 i2c236 = &bus9_mux236;
34                 i2c237 = &bus9_mux237;
35                 i2c238 = &bus9_mux238;
36                 i2c239 = &bus10_mux239;
37                 i2c240 = &bus10_mux240;
38                 i2c241 = &bus10_mux241;
39                 i2c242 = &bus10_mux242;
40                 i2c243 = &bus10_mux243;
41                 i2c244 = &bus10_mux244;
42                 i2c245 = &bus10_mux245;
43                 i2c246 = &bus10_mux246;
44                 i2c247 = &bus12_mux247;
45                 i2c248 = &bus12_mux248;
46                 i2c249 = &bus12_mux249;
47                 i2c250 = &bus12_mux250;
48                 i2c251 = &bus13_mux251;
49                 i2c252 = &bus13_mux252;
50                 i2c253 = &bus13_mux253;
51                 i2c254 = &bus13_mux254;
52                 i2c255 = &bus13_mux255;
53                 i2c256 = &bus13_mux256;
54                 i2c257 = &bus13_mux257;
55                 i2c258 = &bus13_mux258;
56         };
57
58         chosen {
59                 stdout-path = &uart5;
60                 bootargs = "console=ttyS4,115200 earlycon";
61         };
62
63         memory@80000000 {
64                 reg = <0x80000000 0x20000000>;
65         };
66
67         reserved-memory {
68                 #address-cells = <1>;
69                 #size-cells = <1>;
70                 ranges;
71
72                 flash_memory: region@98000000 {
73                         no-map;
74                         reg = <0x98000000 0x04000000>; /* 64M */
75                 };
76
77                 gfx_memory: framebuffer {
78                         size = <0x01000000>;
79                         alignment = <0x01000000>;
80                         compatible = "shared-dma-pool";
81                         reusable;
82                 };
83
84                 video_engine_memory: jpegbuffer {
85                         size = <0x02000000>;
86                         alignment = <0x01000000>;
87                         compatible = "shared-dma-pool";
88                         reusable;
89                 };
90         };
91
92         gpio-keys {
93                 compatible = "gpio-keys";
94
95                 event-air-water {
96                         label = "air-water";
97                         gpios = <&gpio ASPEED_GPIO(F, 6) GPIO_ACTIVE_LOW>;
98                         linux,code = <ASPEED_GPIO(F, 6)>;
99                 };
100
101                 event-checkstop {
102                         label = "checkstop";
103                         gpios = <&gpio ASPEED_GPIO(J, 2) GPIO_ACTIVE_LOW>;
104                         linux,code = <ASPEED_GPIO(J, 2)>;
105                 };
106
107                 event-ps0-presence {
108                         label = "ps0-presence";
109                         gpios = <&gpio ASPEED_GPIO(Z, 2) GPIO_ACTIVE_LOW>;
110                         linux,code = <ASPEED_GPIO(Z, 2)>;
111                 };
112
113                 event-ps1-presence {
114                         label = "ps1-presence";
115                         gpios = <&gpio ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>;
116                         linux,code = <ASPEED_GPIO(Z, 0)>;
117                 };
118
119                 button-id {
120                         label = "id-button";
121                         gpios = <&gpio ASPEED_GPIO(F, 1) GPIO_ACTIVE_LOW>;
122                         linux,code = <ASPEED_GPIO(F, 1)>;
123                 };
124         };
125
126         gpio-keys-polled {
127                 compatible = "gpio-keys-polled";
128                 poll-interval = <1000>;
129
130                 event-fan0-presence {
131                         label = "fan0-presence";
132                         gpios = <&pca9552 9 GPIO_ACTIVE_LOW>;
133                         linux,code = <9>;
134                 };
135
136                 event-fan1-presence {
137                         label = "fan1-presence";
138                         gpios = <&pca9552 10 GPIO_ACTIVE_LOW>;
139                         linux,code = <10>;
140                 };
141
142                 event-fan2-presence {
143                         label = "fan2-presence";
144                         gpios = <&pca9552 11 GPIO_ACTIVE_LOW>;
145                         linux,code = <11>;
146                 };
147
148                 event-fan3-presence {
149                         label = "fan3-presence";
150                         gpios = <&pca9552 12 GPIO_ACTIVE_LOW>;
151                         linux,code = <12>;
152                 };
153
154                 event-fan4-presence {
155                         label = "fan4-presence";
156                         gpios = <&pca9552 13 GPIO_ACTIVE_LOW>;
157                         linux,code = <13>;
158                 };
159
160                 event-fan5-presence {
161                         label = "fan5-presence";
162                         gpios = <&pca9552 14 GPIO_ACTIVE_LOW>;
163                         linux,code = <14>;
164                 };
165         };
166
167         leds {
168                 compatible = "gpio-leds";
169
170                 front-fault {
171                         retain-state-shutdown;
172                         default-state = "keep";
173                         gpios = <&gpio ASPEED_GPIO(AA, 0) GPIO_ACTIVE_LOW>;
174                 };
175
176                 power-button {
177                         retain-state-shutdown;
178                         default-state = "keep";
179                         gpios = <&gpio ASPEED_GPIO(AA, 1) GPIO_ACTIVE_LOW>;
180                 };
181
182                 front-id {
183                         retain-state-shutdown;
184                         default-state = "keep";
185                         gpios = <&gpio ASPEED_GPIO(AA, 2) GPIO_ACTIVE_LOW>;
186                 };
187
188
189                 fan0 {
190                         retain-state-shutdown;
191                         default-state = "keep";
192                         gpios = <&pca9552 0 GPIO_ACTIVE_LOW>;
193                 };
194
195                 fan1 {
196                         retain-state-shutdown;
197                         default-state = "keep";
198                         gpios = <&pca9552 1 GPIO_ACTIVE_LOW>;
199                 };
200
201                 fan2 {
202                         retain-state-shutdown;
203                         default-state = "keep";
204                         gpios = <&pca9552 2 GPIO_ACTIVE_LOW>;
205                 };
206
207                 fan3 {
208                         retain-state-shutdown;
209                         default-state = "keep";
210                         gpios = <&pca9552 3 GPIO_ACTIVE_LOW>;
211                 };
212
213                 fan4 {
214                         retain-state-shutdown;
215                         default-state = "keep";
216                         gpios = <&pca9552 4 GPIO_ACTIVE_LOW>;
217                 };
218
219                 fan5 {
220                         retain-state-shutdown;
221                         default-state = "keep";
222                         gpios = <&pca9552 5 GPIO_ACTIVE_LOW>;
223                 };
224         };
225
226         fsi: gpio-fsi {
227                 compatible = "fsi-master-gpio", "fsi-master";
228                 #address-cells = <2>;
229                 #size-cells = <0>;
230                 no-gpio-delays;
231
232                 clock-gpios = <&gpio ASPEED_GPIO(E, 6) GPIO_ACTIVE_HIGH>;
233                 data-gpios = <&gpio ASPEED_GPIO(E, 7) GPIO_ACTIVE_HIGH>;
234                 mux-gpios = <&gpio ASPEED_GPIO(E, 5) GPIO_ACTIVE_HIGH>;
235                 enable-gpios = <&gpio ASPEED_GPIO(D, 0) GPIO_ACTIVE_HIGH>;
236                 trans-gpios = <&gpio ASPEED_GPIO(R, 2) GPIO_ACTIVE_HIGH>;
237         };
238         iio-hwmon-12v {
239                 compatible = "iio-hwmon";
240                 io-channels = <&adc 0>;
241         };
242
243         iio-hwmon-5v {
244                 compatible = "iio-hwmon";
245                 io-channels = <&adc 1>;
246         };
247
248         iio-hwmon-3v {
249                 compatible = "iio-hwmon";
250                 io-channels = <&adc 2>;
251         };
252
253         iio-hwmon-vdd0 {
254                 compatible = "iio-hwmon";
255                 io-channels = <&adc 3>;
256         };
257
258         iio-hwmon-vdd1 {
259                 compatible = "iio-hwmon";
260                 io-channels = <&adc 4>;
261         };
262
263         iio-hwmon-vcs0 {
264                 compatible = "iio-hwmon";
265                 io-channels = <&adc 5>;
266         };
267
268         iio-hwmon-vcs1 {
269                 compatible = "iio-hwmon";
270                 io-channels = <&adc 6>;
271         };
272
273         iio-hwmon-vdn0 {
274                 compatible = "iio-hwmon";
275                 io-channels = <&adc 7>;
276         };
277
278         iio-hwmon-vdn1 {
279                 compatible = "iio-hwmon";
280                 io-channels = <&adc 8>;
281         };
282
283         iio-hwmon-vio0 {
284                 compatible = "iio-hwmon";
285                 io-channels = <&adc 9>;
286         };
287
288         iio-hwmon-vio1 {
289                 compatible = "iio-hwmon";
290                 io-channels = <&adc 10>;
291         };
292
293         iio-hwmon-vddra {
294                 compatible = "iio-hwmon";
295                 io-channels = <&adc 11>;
296         };
297
298         iio-hwmon-battery {
299                 compatible = "iio-hwmon";
300                 io-channels = <&adc 12>;
301         };
302
303         iio-hwmon-vddrb {
304                 compatible = "iio-hwmon";
305                 io-channels = <&adc 13>;
306         };
307
308         iio-hwmon-vddrc {
309                 compatible = "iio-hwmon";
310                 io-channels = <&adc 14>;
311         };
312
313         iio-hwmon-vddrd {
314                 compatible = "iio-hwmon";
315                 io-channels = <&adc 15>;
316         };
317 };
318
319 &pwm_tacho {
320         status = "okay";
321         pinctrl-names = "default";
322         pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default
323                 &pinctrl_pwm2_default &pinctrl_pwm3_default
324                 &pinctrl_pwm4_default &pinctrl_pwm5_default>;
325
326         fan@0 {
327                 reg = <0x00>;
328                 aspeed,fan-tach-ch = /bits/ 8 <0x00>;
329         };
330
331         fan@1 {
332                 reg = <0x01>;
333                 aspeed,fan-tach-ch = /bits/ 8 <0x01>;
334         };
335
336         fan@2 {
337                 reg = <0x02>;
338                 aspeed,fan-tach-ch = /bits/ 8 <0x02>;
339         };
340
341         fan@3 {
342                 reg = <0x03>;
343                 aspeed,fan-tach-ch = /bits/ 8 <0x03>;
344         };
345
346         fan@4 {
347                 reg = <0x04>;
348                 aspeed,fan-tach-ch = /bits/ 8 <0x04>;
349         };
350
351         fan@5 {
352                 reg = <0x05>;
353                 aspeed,fan-tach-ch = /bits/ 8 <0x05>;
354         };
355
356         fan@6 {
357                 reg = <0x00>;
358                 aspeed,fan-tach-ch = /bits/ 8 <0x06>;
359         };
360
361         fan@7 {
362                 reg = <0x01>;
363                 aspeed,fan-tach-ch = /bits/ 8 <0x07>;
364         };
365
366         fan@8 {
367                 reg = <0x02>;
368                 aspeed,fan-tach-ch = /bits/ 8 <0x08>;
369         };
370
371         fan@9 {
372                 reg = <0x03>;
373                 aspeed,fan-tach-ch = /bits/ 8 <0x09>;
374         };
375
376         fan@10 {
377                 reg = <0x04>;
378                 aspeed,fan-tach-ch = /bits/ 8 <0x0a>;
379         };
380
381         fan@11 {
382                 reg = <0x05>;
383                 aspeed,fan-tach-ch = /bits/ 8 <0x0b>;
384         };
385 };
386
387 &gpio {
388         gpio-line-names =
389         /*A0-A7*/       "","cfam-reset","","","","","","",
390         /*B0-B7*/       "","","","","","","","",
391         /*C0-C7*/       "","","","","","","","",
392         /*D0-D7*/       "fsi-enable","","","","","","","",
393         /*E0-E7*/       "","","","","","fsi-mux","fsi-clock","fsi-data",
394         /*F0-F7*/       "","id-button","","","","","air-water","",
395         /*G0-G7*/       "","","","","","","","",
396         /*H0-H7*/       "","","","","","","","",
397         /*I0-I7*/       "","","","","","","","",
398         /*J0-J7*/       "","","checkstop","","","","","",
399         /*K0-K7*/       "","","","","","","","",
400         /*L0-L7*/       "","","","","","","","",
401         /*M0-M7*/       "","","","","","","","",
402         /*N0-N7*/       "","","","","","","","",
403         /*O0-O7*/       "","","","","","","","",
404         /*P0-P7*/       "","","","","","","","",
405         /*Q0-Q7*/       "","","","","","","","",
406         /*R0-R7*/       "","","fsi-trans","","","","","",
407         /*S0-S7*/       "","","","","","","","",
408         /*T0-T7*/       "","","","","","","","",
409         /*U0-U7*/       "","","","","","","","",
410         /*V0-V7*/       "","","","","","","","",
411         /*W0-W7*/       "","","","","","","","",
412         /*X0-X7*/       "","","","","","","","",
413         /*Y0-Y7*/       "","","","","","","","",
414         /*Z0-Z7*/       "presence-ps1","","presence-ps0","","","","","",
415         /*AA0-AA7*/     "led-front-fault","power-button","led-front-id","","","","","",
416         /*AB0-AB7*/     "","","","","","","","",
417         /*AC0-AC7*/     "","","","","","","","";
418 };
419
420 &fmc {
421         status = "okay";
422         flash@0 {
423                 status = "okay";
424                 label = "bmc";
425                 m25p,fast-read;
426                 spi-max-frequency = <50000000>;
427                 partitions {
428                         #address-cells = < 1 >;
429                         #size-cells = < 1 >;
430                         compatible = "fixed-partitions";
431                         u-boot@0 {
432                                 reg = < 0 0x60000 >;
433                                 label = "u-boot";
434                         };
435                         u-boot-env@60000 {
436                                 reg = < 0x60000 0x20000 >;
437                                 label = "u-boot-env";
438                         };
439                         obmc-ubi@80000 {
440                                 reg = < 0x80000 0x1F80000 >;
441                                 label = "obmc-ubi";
442                         };
443                 };
444         };
445         flash@1 {
446                 status = "okay";
447                 label = "alt-bmc";
448                 m25p,fast-read;
449                 spi-max-frequency = <50000000>;
450                 partitions {
451                         #address-cells = < 1 >;
452                         #size-cells = < 1 >;
453                         compatible = "fixed-partitions";
454                         u-boot@0 {
455                                 reg = < 0 0x60000 >;
456                                 label = "alt-u-boot";
457                         };
458                         u-boot-env@60000 {
459                                 reg = < 0x60000 0x20000 >;
460                                 label = "alt-u-boot-env";
461                         };
462                         obmc-ubi@80000 {
463                                 reg = < 0x80000 0x1F80000 >;
464                                 label = "alt-obmc-ubi";
465                         };
466                 };
467         };
468 };
469
470 &spi1 {
471         status = "okay";
472         pinctrl-names = "default";
473         pinctrl-0 = <&pinctrl_spi1_default>;
474
475         flash@0 {
476                 status = "okay";
477                 label = "pnor";
478                 m25p,fast-read;
479                 spi-max-frequency = <100000000>;
480         };
481 };
482
483 &lpc_ctrl {
484         status = "okay";
485         memory-region = <&flash_memory>;
486         flash = <&spi1>;
487 };
488
489 &uart1 {
490         /* Rear RS-232 connector */
491         status = "okay";
492
493         pinctrl-names = "default";
494         pinctrl-0 = <&pinctrl_txd1_default
495                         &pinctrl_rxd1_default
496                         &pinctrl_nrts1_default
497                         &pinctrl_ndtr1_default
498                         &pinctrl_ndsr1_default
499                         &pinctrl_ncts1_default
500                         &pinctrl_ndcd1_default
501                         &pinctrl_nri1_default>;
502 };
503
504 &uart2 {
505         /* APSS */
506         status = "okay";
507
508         pinctrl-names = "default";
509         pinctrl-0 = <&pinctrl_txd2_default &pinctrl_rxd2_default>;
510 };
511
512 &uart5 {
513         status = "okay";
514 };
515
516 &mac0 {
517         status = "okay";
518
519         pinctrl-names = "default";
520         pinctrl-0 = <&pinctrl_rmii1_default>;
521         clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>,
522                  <&syscon ASPEED_CLK_MAC1RCLK>;
523         clock-names = "MACCLK", "RCLK";
524         use-ncsi;
525 };
526
527 &mac1 {
528         status = "okay";
529
530         pinctrl-names = "default";
531         pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>;
532 };
533
534 &i2c0 {
535         status = "disabled";
536 };
537
538 &i2c1 {
539         status = "disabled";
540 };
541
542 &i2c2 {
543         status = "okay";
544
545         /* SAMTEC P0 */
546         /* SAMTEC P1 */
547
548 };
549
550 &i2c3 {
551         status = "okay";
552
553         /* APSS */
554         /* CPLD */
555
556         /* PCA9516 (repeater) ->
557          *    CLK Buffer 9FGS9092
558          *    CLK Buffer 9DBL0651BKILFT
559          *    CLK Buffer 9DBL0651BKILFT
560          *    Power Supply 0
561          *    Power Supply 1
562          *    PCA 9552 LED
563          */
564
565         power-supply@58 {
566                 compatible = "ibm,cffps1";
567                 reg = <0x58>;
568         };
569
570         power-supply@5b {
571                 compatible = "ibm,cffps1";
572                 reg = <0x5b>;
573         };
574
575         pca9552: pca9552@60 {
576                 compatible = "nxp,pca9552";
577                 reg = <0x60>;
578                 #address-cells = <1>;
579                 #size-cells = <0>;
580                 gpio-controller;
581                 #gpio-cells = <2>;
582
583                 gpio@0 {
584                         reg = <0>;
585                         type = <PCA955X_TYPE_GPIO>;
586                 };
587                 gpio@1 {
588                         reg = <1>;
589                         type = <PCA955X_TYPE_GPIO>;
590                 };
591                 gpio@2 {
592                         reg = <2>;
593                         type = <PCA955X_TYPE_GPIO>;
594                 };
595                 gpio@3 {
596                         reg = <3>;
597                         type = <PCA955X_TYPE_GPIO>;
598                 };
599                 gpio@4 {
600                         reg = <4>;
601                         type = <PCA955X_TYPE_GPIO>;
602                 };
603                 gpio@5 {
604                         reg = <5>;
605                         type = <PCA955X_TYPE_GPIO>;
606                 };
607                 gpio@6 {
608                         reg = <6>;
609                         type = <PCA955X_TYPE_GPIO>;
610                 };
611                 gpio@7 {
612                         reg = <7>;
613                         type = <PCA955X_TYPE_GPIO>;
614                 };
615                 gpio@8 {
616                         reg = <8>;
617                         type = <PCA955X_TYPE_GPIO>;
618                 };
619                 gpio@9 {
620                         reg = <9>;
621                         type = <PCA955X_TYPE_GPIO>;
622                 };
623                 gpio@10 {
624                         reg = <10>;
625                         type = <PCA955X_TYPE_GPIO>;
626                 };
627                 gpio@11 {
628                         reg = <11>;
629                         type = <PCA955X_TYPE_GPIO>;
630                 };
631                 gpio@12 {
632                         reg = <12>;
633                         type = <PCA955X_TYPE_GPIO>;
634                 };
635                 gpio@13 {
636                         reg = <13>;
637                         type = <PCA955X_TYPE_GPIO>;
638                 };
639                 gpio@14 {
640                         reg = <14>;
641                         type = <PCA955X_TYPE_GPIO>;
642                 };
643                 gpio@15 {
644                         reg = <15>;
645                         type = <PCA955X_TYPE_GPIO>;
646                 };
647
648         };
649
650 };
651
652 &i2c4 {
653         status = "okay";
654
655         /* CP0 VDD & VCS : IR35221 */
656         /* CP0 VDN : IR35221 */
657         /* CP0 VIO : IR38064 */
658         /* CP0 VDDR : PXM1330 */
659
660         ir35221@70 {
661                 compatible = "infineon,ir35221";
662                 reg = <0x70>;
663         };
664
665         ir35221@72 {
666                 compatible = "infineon,ir35221";
667                 reg = <0x72>;
668         };
669
670 };
671
672 &i2c5 {
673         status = "okay";
674
675         /* CP0 VDD & VCS : IR35221 */
676         /* CP0 VDN : IR35221 */
677         /* CP0 VIO : IR38064 */
678         /* CP0 VDDR : PXM1330 */
679
680         ir35221@70 {
681                 compatible = "infineon,ir35221";
682                 reg = <0x70>;
683         };
684
685         ir35221@72 {
686                 compatible = "infineon,ir35221";
687                 reg = <0x72>;
688         };
689
690 };
691
692 &i2c6 {
693         status = "okay";
694
695         /* pca9548 -> NVMe1 to 8 */
696
697         pca9548@70 {
698                 compatible = "nxp,pca9548";
699                 #address-cells = <1>;
700                 #size-cells = <0>;
701                 reg = <0x70>;
702
703                 bus7_mux223: i2c@0 {
704                         #address-cells = <1>;
705                         #size-cells = <0>;
706                         reg = <0>;
707                 };
708
709                 bus7_mux224: i2c@1 {
710                         #address-cells = <1>;
711                         #size-cells = <0>;
712                         reg = <1>;
713                 };
714
715                 bus7_mux225: i2c@2 {
716                         #address-cells = <1>;
717                         #size-cells = <0>;
718                         reg = <2>;
719                 };
720
721                 bus7_mux226: i2c@3 {
722                         #address-cells = <1>;
723                         #size-cells = <0>;
724                         reg = <3>;
725                 };
726
727                 bus7_mux227: i2c@4 {
728                         #address-cells = <1>;
729                         #size-cells = <0>;
730                         reg = <4>;
731                 };
732
733                 bus7_mux228: i2c@5 {
734                         #address-cells = <1>;
735                         #size-cells = <0>;
736                         reg = <5>;
737                 };
738
739                 bus7_mux229: i2c@6 {
740                         #address-cells = <1>;
741                         #size-cells = <0>;
742                         reg = <6>;
743                 };
744
745                 bus7_mux230: i2c@7 {
746                         #address-cells = <1>;
747                         #size-cells = <0>;
748                         reg = <7>;
749                 };
750         };
751
752 };
753
754 &i2c7 {
755         status = "okay";
756
757         /* pca9548 -> NVMe9 to 16 */
758
759         pca9548@70 {
760                 compatible = "nxp,pca9548";
761                 #address-cells = <1>;
762                 #size-cells = <0>;
763                 reg = <0x70>;
764
765                 bus6_mux215: i2c@0 {
766                         #address-cells = <1>;
767                         #size-cells = <0>;
768                         reg = <0>;
769                 };
770
771                 bus6_mux216: i2c@1 {
772                         #address-cells = <1>;
773                         #size-cells = <0>;
774                         reg = <1>;
775                 };
776
777                 bus6_mux217: i2c@2 {
778                         #address-cells = <1>;
779                         #size-cells = <0>;
780                         reg = <2>;
781                 };
782
783                 bus6_mux218: i2c@3 {
784                         #address-cells = <1>;
785                         #size-cells = <0>;
786                         reg = <3>;
787                 };
788
789                 bus6_mux219: i2c@4 {
790                         #address-cells = <1>;
791                         #size-cells = <0>;
792                         reg = <4>;
793                 };
794
795                 bus6_mux220: i2c@5 {
796                         #address-cells = <1>;
797                         #size-cells = <0>;
798                         reg = <5>;
799                 };
800
801                 bus6_mux221: i2c@6 {
802                         #address-cells = <1>;
803                         #size-cells = <0>;
804                         reg = <6>;
805                 };
806
807                 bus6_mux222: i2c@7 {
808                         #address-cells = <1>;
809                         #size-cells = <0>;
810                         reg = <7>;
811                 };
812         };
813
814 };
815
816 &i2c8 {
817         status = "okay";
818
819         eeprom@50 {
820                 compatible = "atmel,24c64";
821                 reg = <0x50>;
822         };
823 };
824
825 &i2c9 {
826         status = "okay";
827
828         /* pca9545 Riser ->
829         *       PCIe x8  Slot3
830         *       PCIe x16 slot4
831         *       PCIe x8  slot5
832         *       I2C BMC RISER PCA9554
833         *       BMC SCL/SDA PCA9554
834         *       PCA9554
835         */
836
837         /* pca9545 ->
838         *       PCIe x16 Slot1
839         *       PCIe x8  slot2
840         *       PEX8748
841         */
842
843         pca9545riser@70 {
844                 compatible = "nxp,pca9545";
845                 #address-cells = <1>;
846                 #size-cells = <0>;
847                 reg = <0x70>;
848
849                 i2c-mux-idle-disconnect;
850                 interrupt-controller;
851                 #interrupt-cells = <2>;
852
853                 bus9_mux231: i2c@0 {
854                         #address-cells = <1>;
855                         #size-cells = <0>;
856                         reg = <0>;
857
858                         tca9554@39 {
859                                 compatible = "ti,tca9554";
860                                 reg = <0x39>;
861                                 gpio-controller;
862                                 #gpio-cells = <2>;
863
864                                 smbus0-hog {
865                                         gpio-hog;
866                                         gpios = <4 GPIO_ACTIVE_HIGH>;
867                                         output-high;
868                                         line-name = "smbus0";
869                                 };
870                         };
871
872                         tmp431@4c {
873                                 compatible = "ti,tmp401";
874                                 reg = <0x4c>;
875                         };
876                 };
877
878                 bus9_mux232: i2c@1 {
879                         #address-cells = <1>;
880                         #size-cells = <0>;
881                         reg = <1>;
882
883                         tca9554@39 {
884                                 compatible = "ti,tca9554";
885                                 reg = <0x39>;
886                                 gpio-controller;
887                                 #gpio-cells = <2>;
888
889                                 smbus1-hog {
890                                         gpio-hog;
891                                         gpios = <4 GPIO_ACTIVE_HIGH>;
892                                         output-high;
893                                         line-name = "smbus1";
894                                 };
895                         };
896
897                         tmp431@4c {
898                                 compatible = "ti,tmp401";
899                                 reg = <0x4c>;
900                         };
901                 };
902
903                 bus9_mux233: i2c@2 {
904                         #address-cells = <1>;
905                         #size-cells = <0>;
906                         reg = <2>;
907                 };
908
909                 bus9_mux234: i2c@3 {
910                         #address-cells = <1>;
911                         #size-cells = <0>;
912                         reg = <3>;
913                 };
914         };
915
916         pca9545@71 {
917                 compatible = "nxp,pca9545";
918                 #address-cells = <1>;
919                 #size-cells = <0>;
920                 reg = <0x71>;
921
922                 i2c-mux-idle-disconnect;
923                 interrupt-controller;
924                 #interrupt-cells = <2>;
925
926                 bus9_mux235: i2c@0 {
927                         #address-cells = <1>;
928                         #size-cells = <0>;
929                         reg = <0>;
930
931                         tca9554@39 {
932                                 compatible = "ti,tca9554";
933                                 reg = <0x39>;
934                                 gpio-controller;
935                                 #gpio-cells = <2>;
936
937                                 smbus2-hog {
938                                         gpio-hog;
939                                         gpios = <4 GPIO_ACTIVE_HIGH>;
940                                         output-high;
941                                         line-name = "smbus2";
942                                 };
943                         };
944
945                         tmp431@4c {
946                                 compatible = "ti,tmp401";
947                                 reg = <0x4c>;
948                         };
949                 };
950
951                 bus9_mux236: i2c@1 {
952                         #address-cells = <1>;
953                         #size-cells = <0>;
954                         reg = <1>;
955
956                         tca9554@39 {
957                                 compatible = "ti,tca9554";
958                                 reg = <0x39>;
959                                 gpio-controller;
960                                 #gpio-cells = <2>;
961
962                                 smbus3-hog {
963                                         gpio-hog;
964                                         gpios = <4 GPIO_ACTIVE_HIGH>;
965                                         output-high;
966                                         line-name = "smbus3";
967                                 };
968                         };
969
970                         tmp431@4c {
971                                 compatible = "ti,tmp401";
972                                 reg = <0x4c>;
973                         };
974                 };
975
976                 bus9_mux237: i2c@2 {
977                         #address-cells = <1>;
978                         #size-cells = <0>;
979                         reg = <2>;
980                 };
981
982                 bus9_mux238: i2c@3 {
983                         #address-cells = <1>;
984                         #size-cells = <0>;
985                         reg = <3>;
986                 };
987         };
988 };
989
990 &i2c10 {
991         status = "okay";
992
993         /* pca9545 Riser ->
994         *       PCIe x8  Slot8
995         *       PCIe x16 slot9
996         *       PCIe x8  slot10
997         *       I2C BMC RISER PCA9554
998         *       BMC SCL/SDA PCA9554
999         *       PCA9554
1000         */
1001
1002         /* pca9545 ->
1003         *       PCIe x16 Slot1
1004         *       PCIe x8  slot2
1005         *       PEX8748
1006         */
1007
1008         pca9545riser@70 {
1009                 compatible = "nxp,pca9545";
1010                 #address-cells = <1>;
1011                 #size-cells = <0>;
1012                 reg = <0x70>;
1013
1014                 i2c-mux-idle-disconnect;
1015                 interrupt-controller;
1016                 #interrupt-cells = <2>;
1017
1018                 bus10_mux239: i2c@0 {
1019                         #address-cells = <1>;
1020                         #size-cells = <0>;
1021                         reg = <0>;
1022
1023                         tca9554@39 {
1024                                 compatible = "ti,tca9554";
1025                                 reg = <0x39>;
1026                                 gpio-controller;
1027                                 #gpio-cells = <2>;
1028
1029                                 smbus4-hog {
1030                                         gpio-hog;
1031                                         gpios = <4 GPIO_ACTIVE_HIGH>;
1032                                         output-high;
1033                                         line-name = "smbus4";
1034                                 };
1035                         };
1036
1037                         tmp431@4c {
1038                                 compatible = "ti,tmp401";
1039                                 reg = <0x4c>;
1040                         };
1041                 };
1042
1043                 bus10_mux240: i2c@1 {
1044                         #address-cells = <1>;
1045                         #size-cells = <0>;
1046                         reg = <1>;
1047
1048                         tca9554@39 {
1049                                 compatible = "ti,tca9554";
1050                                 reg = <0x39>;
1051                                 gpio-controller;
1052                                 #gpio-cells = <2>;
1053
1054                                 smbus5-hog {
1055                                         gpio-hog;
1056                                         gpios = <4 GPIO_ACTIVE_HIGH>;
1057                                         output-high;
1058                                         line-name = "smbus5";
1059                                 };
1060                         };
1061
1062                         tmp431@4c {
1063                                 compatible = "ti,tmp401";
1064                                 reg = <0x4c>;
1065                         };
1066                 };
1067
1068                 bus10_mux241: i2c@2 {
1069                         #address-cells = <1>;
1070                         #size-cells = <0>;
1071                         reg = <2>;
1072                 };
1073
1074                 bus10_mux242: i2c@3 {
1075                         #address-cells = <1>;
1076                         #size-cells = <0>;
1077                         reg = <3>;
1078                 };
1079         };
1080
1081         pca9545@71 {
1082                 compatible = "nxp,pca9545";
1083                 #address-cells = <1>;
1084                 #size-cells = <0>;
1085                 reg = <0x71>;
1086
1087                 i2c-mux-idle-disconnect;
1088                 interrupt-controller;
1089                 #interrupt-cells = <2>;
1090
1091                 bus10_mux243: i2c@0 {
1092                         #address-cells = <1>;
1093                         #size-cells = <0>;
1094                         reg = <0>;
1095
1096                         tca9554@39 {
1097                                 compatible = "ti,tca9554";
1098                                 reg = <0x39>;
1099                                 gpio-controller;
1100                                 #gpio-cells = <2>;
1101
1102                                 smbus6-hog {
1103                                         gpio-hog;
1104                                         gpios = <4 GPIO_ACTIVE_HIGH>;
1105                                         output-high;
1106                                         line-name = "smbus6";
1107                                 };
1108                         };
1109
1110                         tmp431@4c {
1111                                 compatible = "ti,tmp401";
1112                                 reg = <0x4c>;
1113                         };
1114                 };
1115
1116                 bus10_mux244: i2c@1 {
1117                         #address-cells = <1>;
1118                         #size-cells = <0>;
1119                         reg = <1>;
1120
1121                         tca9554@39 {
1122                                 compatible = "ti,tca9554";
1123                                 reg = <0x39>;
1124                                 gpio-controller;
1125                                 #gpio-cells = <2>;
1126
1127                                 smbus7-hog {
1128                                         gpio-hog;
1129                                         gpios = <4 GPIO_ACTIVE_HIGH>;
1130                                         output-high;
1131                                         line-name = "smbus7";
1132                                 };
1133                         };
1134
1135                         tmp431@4c {
1136                                 compatible = "ti,tmp401";
1137                                 reg = <0x4c>;
1138                         };
1139                 };
1140
1141                 bus10_mux245: i2c@2 {
1142                         #address-cells = <1>;
1143                         #size-cells = <0>;
1144                         reg = <2>;
1145                 };
1146
1147                 bus10_mux246: i2c@3 {
1148                         #address-cells = <1>;
1149                         #size-cells = <0>;
1150                         reg = <3>;
1151                 };
1152         };
1153 };
1154
1155 &i2c11 {
1156         status = "okay";
1157
1158         /* TPM */
1159         /* RTC RX8900CE */
1160         /* FPGA for power sequence */
1161         /* TMP275A */
1162         /* TMP275A */
1163         /* EMC1462 */
1164
1165         tpm@57 {
1166                 compatible = "infineon,slb9645tt";
1167                 reg = <0x57>;
1168         };
1169
1170         rtc@32 {
1171                 compatible = "epson,rx8900";
1172                 reg = <0x32>;
1173         };
1174
1175         tmp275@48 {
1176                 compatible = "ti,tmp275";
1177                 reg = <0x48>;
1178         };
1179
1180         tmp275@49 {
1181                 compatible = "ti,tmp275";
1182                 reg = <0x49>;
1183         };
1184
1185         /* chip emc1462 use emc1403 driver */
1186         emc1403@4c {
1187                 compatible = "smsc,emc1403";
1188                 reg = <0x4c>;
1189         };
1190
1191 };
1192
1193 &i2c12 {
1194         status = "okay";
1195
1196         /* pca9545 ->
1197         *       SAS BP1
1198         *       SAS BP2
1199         *       NVMe BP
1200         *       M.2 riser
1201         */
1202
1203         pca9545@70 {
1204                 compatible = "nxp,pca9545";
1205                 #address-cells = <1>;
1206                 #size-cells = <0>;
1207                 reg = <0x70>;
1208
1209                 interrupt-controller;
1210                 #interrupt-cells = <2>;
1211
1212                 bus12_mux247: i2c@0 {
1213                         #address-cells = <1>;
1214                         #size-cells = <0>;
1215                         reg = <0>;
1216
1217                         eeprom@50 {
1218                                 compatible = "atmel,24c64";
1219                                 reg = <0x50>;
1220                         };
1221                 };
1222
1223                 bus12_mux248: i2c@1 {
1224                         #address-cells = <1>;
1225                         #size-cells = <0>;
1226                         reg = <1>;
1227
1228                         eeprom@50 {
1229                                 compatible = "atmel,24c64";
1230                                 reg = <0x50>;
1231                         };
1232                 };
1233
1234                 bus12_mux249: i2c@2 {
1235                         #address-cells = <1>;
1236                         #size-cells = <0>;
1237                         reg = <2>;
1238
1239                         eeprom@50 {
1240                                 compatible = "atmel,24c64";
1241                                 reg = <0x50>;
1242                         };
1243                 };
1244
1245                 bus12_mux250: i2c@3 {
1246                         #address-cells = <1>;
1247                         #size-cells = <0>;
1248                         reg = <3>;
1249
1250                         tmp275@48 {
1251                                 compatible = "ti,tmp275";
1252                                 reg = <0x48>;
1253                         };
1254                 };
1255
1256         };
1257
1258 };
1259
1260 &i2c13 {
1261         status = "okay";
1262
1263         /* pca9548 ->
1264         *       NVMe BP
1265         *       NVMe HDD17 to 24
1266         */
1267
1268         pca9548@70 {
1269                 compatible = "nxp,pca9548";
1270                 #address-cells = <1>;
1271                 #size-cells = <0>;
1272                 reg = <0x70>;
1273                 bus13_mux251: i2c@0 {
1274                         #address-cells = <1>;
1275                         #size-cells = <0>;
1276                         reg = <0>;
1277                 };
1278
1279                 bus13_mux252: i2c@1 {
1280                         #address-cells = <1>;
1281                         #size-cells = <0>;
1282                         reg = <1>;
1283                 };
1284
1285                 bus13_mux253: i2c@2 {
1286                         #address-cells = <1>;
1287                         #size-cells = <0>;
1288                         reg = <2>;
1289                 };
1290
1291                 bus13_mux254: i2c@3 {
1292                         #address-cells = <1>;
1293                         #size-cells = <0>;
1294                         reg = <3>;
1295                 };
1296
1297                 bus13_mux255: i2c@4 {
1298                         #address-cells = <1>;
1299                         #size-cells = <0>;
1300                         reg = <4>;
1301                 };
1302
1303                 bus13_mux256: i2c@5 {
1304                         #address-cells = <1>;
1305                         #size-cells = <0>;
1306                         reg = <5>;
1307                 };
1308
1309                 bus13_mux257: i2c@6 {
1310                         #address-cells = <1>;
1311                         #size-cells = <0>;
1312                         reg = <6>;
1313                 };
1314
1315                 bus13_mux258: i2c@7 {
1316                         #address-cells = <1>;
1317                         #size-cells = <0>;
1318                         reg = <7>;
1319                 };
1320         };
1321 };
1322
1323 &vuart {
1324         status = "okay";
1325 };
1326
1327 &gfx {
1328         status = "okay";
1329         memory-region = <&gfx_memory>;
1330 };
1331
1332 &adc {
1333         status = "okay";
1334         pinctrl-names = "default";
1335         pinctrl-0 = <&pinctrl_adc0_default
1336                         &pinctrl_adc1_default
1337                         &pinctrl_adc2_default
1338                         &pinctrl_adc3_default
1339                         &pinctrl_adc4_default
1340                         &pinctrl_adc5_default
1341                         &pinctrl_adc6_default
1342                         &pinctrl_adc7_default
1343                         &pinctrl_adc8_default
1344                         &pinctrl_adc9_default
1345                         &pinctrl_adc10_default
1346                         &pinctrl_adc11_default
1347                         &pinctrl_adc12_default
1348                         &pinctrl_adc13_default
1349                         &pinctrl_adc14_default
1350                         &pinctrl_adc15_default>;
1351 };
1352
1353 &wdt1 {
1354         aspeed,reset-type = "none";
1355         aspeed,external-signal;
1356         aspeed,ext-push-pull;
1357         aspeed,ext-active-high;
1358
1359         pinctrl-names = "default";
1360         pinctrl-0 = <&pinctrl_wdtrst1_default>;
1361 };
1362
1363 &wdt2 {
1364         aspeed,alt-boot;
1365 };
1366
1367 &ibt {
1368         status = "okay";
1369 };
1370
1371 &vhub {
1372         status = "okay";
1373 };
1374
1375 &video {
1376         status = "okay";
1377         memory-region = <&video_engine_memory>;
1378 };
1379
1380 #include "ibm-power9-dual.dtsi"
1381