]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/gnu/dts/arm/aspeed-bmc-opp-witherspoon.dts
MFC r358430, r359934-r359936, r359939, r359969, r360093
[FreeBSD/FreeBSD.git] / sys / gnu / dts / arm / aspeed-bmc-opp-witherspoon.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 = "Witherspoon BMC";
9         compatible = "ibm,witherspoon-bmc", "aspeed,ast2500";
10
11         chosen {
12                 stdout-path = &uart5;
13                 bootargs = "console=ttyS4,115200 earlyprintk";
14         };
15
16         memory@80000000 {
17                 reg = <0x80000000 0x20000000>;
18         };
19
20         reserved-memory {
21                 #address-cells = <1>;
22                 #size-cells = <1>;
23                 ranges;
24
25                 flash_memory: region@98000000 {
26                         no-map;
27                         reg = <0x98000000 0x04000000>; /* 64M */
28                 };
29
30                 gfx_memory: framebuffer {
31                         size = <0x01000000>;
32                         alignment = <0x01000000>;
33                         compatible = "shared-dma-pool";
34                         reusable;
35                 };
36
37                 video_engine_memory: jpegbuffer {
38                         size = <0x02000000>;    /* 32MM */
39                         alignment = <0x01000000>;
40                         compatible = "shared-dma-pool";
41                         reusable;
42                 };
43         };
44
45         gpio-keys {
46                 compatible = "gpio-keys";
47
48                 air-water {
49                         label = "air-water";
50                         gpios = <&gpio ASPEED_GPIO(B, 5) GPIO_ACTIVE_LOW>;
51                         linux,code = <ASPEED_GPIO(B, 5)>;
52                 };
53
54                 checkstop {
55                         label = "checkstop";
56                         gpios = <&gpio ASPEED_GPIO(J, 2) GPIO_ACTIVE_LOW>;
57                         linux,code = <ASPEED_GPIO(J, 2)>;
58                 };
59
60                 ps0-presence {
61                         label = "ps0-presence";
62                         gpios = <&gpio ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>;
63                         linux,code = <ASPEED_GPIO(P, 7)>;
64                 };
65
66                 ps1-presence {
67                         label = "ps1-presence";
68                         gpios = <&gpio ASPEED_GPIO(N, 0) GPIO_ACTIVE_LOW>;
69                         linux,code = <ASPEED_GPIO(N, 0)>;
70                 };
71         };
72
73         iio-hwmon-battery {
74                 compatible = "iio-hwmon";
75                 io-channels = <&adc 12>;
76         };
77
78         gpio-keys-polled {
79                 compatible = "gpio-keys-polled";
80                 poll-interval = <1000>;
81
82                 fan0-presence {
83                         label = "fan0-presence";
84                         gpios = <&pca0 4 GPIO_ACTIVE_LOW>;
85                         linux,code = <4>;
86                 };
87
88                 fan1-presence {
89                         label = "fan1-presence";
90                         gpios = <&pca0 5 GPIO_ACTIVE_LOW>;
91                         linux,code = <5>;
92                 };
93
94                 fan2-presence {
95                         label = "fan2-presence";
96                         gpios = <&pca0 6 GPIO_ACTIVE_LOW>;
97                         linux,code = <6>;
98                 };
99
100                 fan3-presence {
101                         label = "fan3-presence";
102                         gpios = <&pca0 7 GPIO_ACTIVE_LOW>;
103                         linux,code = <7>;
104                 };
105         };
106
107         leds {
108                 compatible = "gpio-leds";
109
110                 fan0 {
111                         retain-state-shutdown;
112                         default-state = "keep";
113                         gpios = <&pca0 0 GPIO_ACTIVE_LOW>;
114                 };
115
116                 fan1 {
117                         retain-state-shutdown;
118                         default-state = "keep";
119                         gpios = <&pca0 1 GPIO_ACTIVE_LOW>;
120                 };
121
122                 fan2 {
123                         retain-state-shutdown;
124                         default-state = "keep";
125                         gpios = <&pca0 2 GPIO_ACTIVE_LOW>;
126                 };
127
128                 fan3 {
129                         retain-state-shutdown;
130                         default-state = "keep";
131                         gpios = <&pca0 3 GPIO_ACTIVE_LOW>;
132                 };
133
134                 front-fault {
135                         retain-state-shutdown;
136                         default-state = "keep";
137                         gpios = <&pca0 13 GPIO_ACTIVE_LOW>;
138                 };
139
140                 front-power {
141                         retain-state-shutdown;
142                         default-state = "keep";
143                         gpios = <&pca0 14 GPIO_ACTIVE_LOW>;
144                 };
145
146                 front-id {
147                         retain-state-shutdown;
148                         default-state = "keep";
149                         gpios = <&pca0 15 GPIO_ACTIVE_LOW>;
150                 };
151
152                 rear-fault {
153                         gpios = <&gpio ASPEED_GPIO(N, 2) GPIO_ACTIVE_LOW>;
154                 };
155
156                 rear-id {
157                         gpios = <&gpio ASPEED_GPIO(N, 4) GPIO_ACTIVE_LOW>;
158                 };
159
160                 rear-power {
161                         gpios = <&gpio ASPEED_GPIO(N, 3) GPIO_ACTIVE_LOW>;
162                 };
163
164                 power-button {
165                         gpios = <&gpio ASPEED_GPIO(R, 5) GPIO_ACTIVE_LOW>;
166                 };
167         };
168
169         fsi: gpio-fsi {
170                 compatible = "fsi-master-gpio", "fsi-master";
171                 #address-cells = <2>;
172                 #size-cells = <0>;
173                 no-gpio-delays;
174
175                 clock-gpios = <&gpio ASPEED_GPIO(AA, 0) GPIO_ACTIVE_HIGH>;
176                 data-gpios = <&gpio ASPEED_GPIO(E, 0) GPIO_ACTIVE_HIGH>;
177                 mux-gpios = <&gpio ASPEED_GPIO(A, 6) GPIO_ACTIVE_HIGH>;
178                 enable-gpios = <&gpio ASPEED_GPIO(D, 0) GPIO_ACTIVE_HIGH>;
179                 trans-gpios = <&gpio ASPEED_GPIO(R, 2) GPIO_ACTIVE_HIGH>;
180         };
181
182         iio-hwmon-dps310 {
183                 compatible = "iio-hwmon";
184                 io-channels = <&dps 0>;
185         };
186
187         iio-hwmon-bmp280 {
188                 compatible = "iio-hwmon";
189                 io-channels = <&bmp 1>;
190         };
191
192 };
193
194 &fmc {
195         status = "okay";
196
197         flash@0 {
198                 status = "okay";
199                 label = "bmc";
200                 m25p,fast-read;
201                 spi-max-frequency = <50000000>;
202
203                 partitions {
204                         #address-cells = < 1 >;
205                         #size-cells = < 1 >;
206                         compatible = "fixed-partitions";
207                         u-boot@0 {
208                                 reg = < 0 0x60000 >;
209                                 label = "u-boot";
210                         };
211                         u-boot-env@60000 {
212                                 reg = < 0x60000 0x20000 >;
213                                 label = "u-boot-env";
214                         };
215                         obmc-ubi@80000 {
216                                 reg = < 0x80000 0x1F80000 >;
217                                 label = "obmc-ubi";
218                         };
219                 };
220         };
221
222         flash@1 {
223                 status = "okay";
224                 label = "alt-bmc";
225                 m25p,fast-read;
226                 spi-max-frequency = <50000000>;
227
228                 partitions {
229                         #address-cells = < 1 >;
230                         #size-cells = < 1 >;
231                         compatible = "fixed-partitions";
232                         u-boot@0 {
233                                 reg = < 0 0x60000 >;
234                                 label = "alt-u-boot";
235                         };
236                         u-boot-env@60000 {
237                                 reg = < 0x60000 0x20000 >;
238                                 label = "alt-u-boot-env";
239                         };
240                         obmc-ubi@80000 {
241                                 reg = < 0x80000 0x1F80000 >;
242                                 label = "alt-obmc-ubi";
243                         };
244                 };
245         };
246 };
247
248 &spi1 {
249         status = "okay";
250         pinctrl-names = "default";
251         pinctrl-0 = <&pinctrl_spi1_default>;
252
253         flash@0 {
254                 status = "okay";
255                 label = "pnor";
256                 m25p,fast-read;
257                 spi-max-frequency = <100000000>;
258         };
259 };
260
261 &uart1 {
262         /* Rear RS-232 connector */
263         status = "okay";
264         pinctrl-names = "default";
265         pinctrl-0 = <&pinctrl_txd1_default
266                         &pinctrl_rxd1_default
267                         &pinctrl_nrts1_default
268                         &pinctrl_ndtr1_default
269                         &pinctrl_ndsr1_default
270                         &pinctrl_ncts1_default
271                         &pinctrl_ndcd1_default
272                         &pinctrl_nri1_default>;
273 };
274
275 &uart2 {
276         /* APSS */
277         status = "okay";
278         pinctrl-names = "default";
279         pinctrl-0 = <&pinctrl_txd2_default &pinctrl_rxd2_default>;
280 };
281
282 &uart5 {
283         status = "okay";
284 };
285
286 &lpc_ctrl {
287         status = "okay";
288         memory-region = <&flash_memory>;
289         flash = <&spi1>;
290 };
291
292 &mac0 {
293         status = "okay";
294         pinctrl-names = "default";
295         pinctrl-0 = <&pinctrl_rmii1_default>;
296         clocks = <&syscon ASPEED_CLK_GATE_MAC1CLK>,
297                  <&syscon ASPEED_CLK_MAC1RCLK>;
298         clock-names = "MACCLK", "RCLK";
299         use-ncsi;
300 };
301
302 &i2c2 {
303         status = "okay";
304
305         /* MUX ->
306          *    Samtec 1
307          *    Samtec 2
308          */
309 };
310
311 &i2c3 {
312         status = "okay";
313
314         bmp: bmp280@77 {
315                 compatible = "bosch,bmp280";
316                 reg = <0x77>;
317                 #io-channel-cells = <1>;
318         };
319
320         max31785@52 {
321                 compatible = "maxim,max31785a";
322                 reg = <0x52>;
323                 #address-cells = <1>;
324                 #size-cells = <0>;
325         };
326
327         dps: dps310@76 {
328                 compatible = "infineon,dps310";
329                 reg = <0x76>;
330                 #io-channel-cells = <0>;
331         };
332
333         pca0: pca9552@60 {
334                 compatible = "nxp,pca9552";
335                 reg = <0x60>;
336                 #address-cells = <1>;
337                 #size-cells = <0>;
338
339                 gpio-controller;
340                 #gpio-cells = <2>;
341
342                 gpio@0 {
343                         reg = <0>;
344                         type = <PCA955X_TYPE_GPIO>;
345                 };
346
347                 gpio@1 {
348                         reg = <1>;
349                         type = <PCA955X_TYPE_GPIO>;
350                 };
351
352                 gpio@2 {
353                         reg = <2>;
354                         type = <PCA955X_TYPE_GPIO>;
355                 };
356
357                 gpio@3 {
358                         reg = <3>;
359                         type = <PCA955X_TYPE_GPIO>;
360                 };
361
362                 gpio@4 {
363                         reg = <4>;
364                         type = <PCA955X_TYPE_GPIO>;
365                 };
366
367                 gpio@5 {
368                         reg = <5>;
369                         type = <PCA955X_TYPE_GPIO>;
370                 };
371
372                 gpio@6 {
373                         reg = <6>;
374                         type = <PCA955X_TYPE_GPIO>;
375                 };
376
377                 gpio@7 {
378                         reg = <7>;
379                         type = <PCA955X_TYPE_GPIO>;
380                 };
381
382                 gpio@8 {
383                         reg = <8>;
384                         type = <PCA955X_TYPE_GPIO>;
385                 };
386
387                 gpio@9 {
388                         reg = <9>;
389                         type = <PCA955X_TYPE_GPIO>;
390                 };
391
392                 gpio@10 {
393                         reg = <10>;
394                         type = <PCA955X_TYPE_GPIO>;
395                 };
396
397                 gpio@11 {
398                         reg = <11>;
399                         type = <PCA955X_TYPE_GPIO>;
400                 };
401
402                 gpio@12 {
403                         reg = <12>;
404                         type = <PCA955X_TYPE_GPIO>;
405                 };
406
407                 gpio@13 {
408                         reg = <13>;
409                         type = <PCA955X_TYPE_GPIO>;
410                 };
411
412                 gpio@14 {
413                         reg = <14>;
414                         type = <PCA955X_TYPE_GPIO>;
415                 };
416
417                 gpio@15 {
418                         reg = <15>;
419                         type = <PCA955X_TYPE_GPIO>;
420                 };
421         };
422
423         power-supply@68 {
424                 compatible = "ibm,cffps1";
425                 reg = <0x68>;
426         };
427
428         power-supply@69 {
429                 compatible = "ibm,cffps1";
430                 reg = <0x69>;
431         };
432 };
433
434 &i2c4 {
435         status = "okay";
436
437         tmp423a@4c {
438                 compatible = "ti,tmp423";
439                 reg = <0x4c>;
440         };
441
442         ir35221@70 {
443                 compatible = "infineon,ir35221";
444                 reg = <0x70>;
445         };
446
447         ir35221@71 {
448                 compatible = "infineon,ir35221";
449                 reg = <0x71>;
450         };
451 };
452
453
454 &i2c5 {
455         status = "okay";
456
457         tmp423a@4c {
458                 compatible = "ti,tmp423";
459                 reg = <0x4c>;
460         };
461
462         ir35221@70 {
463                 compatible = "infineon,ir35221";
464                 reg = <0x70>;
465         };
466
467         ir35221@71 {
468                 compatible = "infineon,ir35221";
469                 reg = <0x71>;
470         };
471 };
472
473 &i2c9 {
474         status = "okay";
475
476         tmp275@4a {
477                 compatible = "ti,tmp275";
478                 reg = <0x4a>;
479         };
480 };
481
482 &i2c10 {
483         /* MUX
484          *   -> PCIe Slot 3
485          *   -> PCIe Slot 4
486          */
487         status = "okay";
488 };
489
490 &i2c11 {
491         status = "okay";
492
493         pca9552: pca9552@60 {
494                 compatible = "nxp,pca9552";
495                 reg = <0x60>;
496                 #address-cells = <1>;
497                 #size-cells = <0>;
498                 gpio-controller;
499                 #gpio-cells = <2>;
500
501                 gpio-line-names = "PS_SMBUS_RESET_N", "APSS_RESET_N",
502                         "GPU0_TH_OVERT_N_BUFF", "GPU1_TH_OVERT_N_BUFF",
503                         "GPU2_TH_OVERT_N_BUFF", "GPU3_TH_OVERT_N_BUFF",
504                         "GPU4_TH_OVERT_N_BUFF", "GPU5_TH_OVERT_N_BUFF",
505                         "GPU0_PWR_GOOD_BUFF", "GPU1_PWR_GOOD_BUFF",
506                         "GPU2_PWR_GOOD_BUFF", "GPU3_PWR_GOOD_BUFF",
507                         "GPU4_PWR_GOOD_BUFF", "GPU5_PWR_GOOD_BUFF",
508                         "12V_BREAKER_FLT_N", "THROTTLE_UNLATCHED_N";
509
510                 gpio@0 {
511                         reg = <0>;
512                         type = <PCA955X_TYPE_GPIO>;
513                 };
514
515                 gpio@1 {
516                         reg = <1>;
517                         type = <PCA955X_TYPE_GPIO>;
518                 };
519
520                 gpio@2 {
521                         reg = <2>;
522                         type = <PCA955X_TYPE_GPIO>;
523                 };
524
525                 gpio@3 {
526                         reg = <3>;
527                         type = <PCA955X_TYPE_GPIO>;
528                 };
529
530                 gpio@4 {
531                         reg = <4>;
532                         type = <PCA955X_TYPE_GPIO>;
533                 };
534
535                 gpio@5 {
536                         reg = <5>;
537                         type = <PCA955X_TYPE_GPIO>;
538                 };
539
540                 gpio@6 {
541                         reg = <6>;
542                         type = <PCA955X_TYPE_GPIO>;
543                 };
544
545                 gpio@7 {
546                         reg = <7>;
547                         type = <PCA955X_TYPE_GPIO>;
548                 };
549
550                 gpio@8 {
551                         reg = <8>;
552                         type = <PCA955X_TYPE_GPIO>;
553                 };
554
555                 gpio@9 {
556                         reg = <9>;
557                         type = <PCA955X_TYPE_GPIO>;
558                 };
559
560                 gpio@10 {
561                         reg = <10>;
562                         type = <PCA955X_TYPE_GPIO>;
563                 };
564
565                 gpio@11 {
566                         reg = <11>;
567                         type = <PCA955X_TYPE_GPIO>;
568                 };
569
570                 gpio@12 {
571                         reg = <12>;
572                         type = <PCA955X_TYPE_GPIO>;
573                 };
574
575                 gpio@13 {
576                         reg = <13>;
577                         type = <PCA955X_TYPE_GPIO>;
578                 };
579
580                 gpio@14 {
581                         reg = <14>;
582                         type = <PCA955X_TYPE_GPIO>;
583                 };
584
585                 gpio@15 {
586                         reg = <15>;
587                         type = <PCA955X_TYPE_GPIO>;
588                 };
589         };
590
591         rtc@32 {
592                 compatible = "epson,rx8900";
593                 reg = <0x32>;
594         };
595
596         eeprom@51 {
597                 compatible = "atmel,24c64";
598                 reg = <0x51>;
599         };
600
601         ucd90160@64 {
602                 compatible = "ti,ucd90160";
603                 reg = <0x64>;
604         };
605 };
606
607 &i2c12 {
608         status = "okay";
609 };
610
611 &i2c13 {
612         status = "okay";
613 };
614
615 &vuart {
616         status = "okay";
617 };
618
619 &gfx {
620         status = "okay";
621         memory-region = <&gfx_memory>;
622 };
623
624 &pinctrl {
625         aspeed,external-nodes = <&gfx &lhc>;
626 };
627
628 &wdt1 {
629         aspeed,reset-type = "none";
630         aspeed,external-signal;
631         aspeed,ext-push-pull;
632         aspeed,ext-active-high;
633
634         pinctrl-names = "default";
635         pinctrl-0 = <&pinctrl_wdtrst1_default>;
636 };
637
638 &wdt2 {
639         aspeed,alt-boot;
640 };
641
642 &ibt {
643         status = "okay";
644 };
645
646 &adc {
647         status = "okay";
648 };
649
650 &vhub {
651         status = "okay";
652 };
653
654 &video {
655         status = "okay";
656         memory-region = <&video_engine_memory>;
657 };
658
659 #include "ibm-power9-dual.dtsi"