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