blob: 98477792aa005a6c62d7bbb7daf0c31280bcc7e0 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-or-later
2// Copyright 2022 Facebook Inc.
3
4/dts-v1/;
5#include "aspeed-g6.dtsi"
6#include <dt-bindings/gpio/aspeed-gpio.h>
7#include <dt-bindings/leds/leds-pca955x.h>
8#include <dt-bindings/i2c/i2c.h>
9
10/ {
11 model = "Facebook Yosemite 4 BMC";
12 compatible = "facebook,yosemite4-bmc", "aspeed,ast2600";
13
14 aliases {
15 serial4 = &uart5;
16 serial5 = &uart6;
17 serial6 = &uart7;
18 serial7 = &uart8;
19 serial8 = &uart9;
20 };
21
22 chosen {
23 stdout-path = "serial4:57600n8";
24 };
25
26 memory@80000000 {
27 device_type = "memory";
28 reg = <0x80000000 0x80000000>;
29 };
30
31 iio-hwmon {
32 compatible = "iio-hwmon";
33 io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
34 <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
35 <&adc1 0>, <&adc1 1>;
36 };
37};
38
39&uart1 {
40 status = "okay";
41};
42
43&uart2 {
44 status = "okay";
45};
46
47&uart3 {
48 status = "okay";
49};
50
51&uart4 {
52 status = "okay";
53};
54
55&uart5 {
56 status = "okay";
57};
58
59&uart6 {
60 status = "okay";
61};
62
63&uart7 {
64 status = "okay";
65};
66
67&uart8 {
68 status = "okay";
69};
70
71&uart9 {
72 status = "okay";
73};
74
75&wdt1 {
76 status = "okay";
77 pinctrl-names = "default";
78 pinctrl-0 = <&pinctrl_wdtrst1_default>;
79 aspeed,reset-type = "soc";
80 aspeed,external-signal;
81 aspeed,ext-push-pull;
82 aspeed,ext-active-high;
83 aspeed,ext-pulse-duration = <256>;
84};
85
86&mac2 {
87 status = "okay";
88 pinctrl-names = "default";
89 pinctrl-0 = <&pinctrl_rmii3_default>;
90 use-ncsi;
Tom Rini762f85b2024-07-20 11:15:10 -060091 mellanox,multi-host;
Tom Rini53633a82024-02-29 12:33:36 -050092};
93
94&mac3 {
95 status = "okay";
96 pinctrl-names = "default";
97 pinctrl-0 = <&pinctrl_rmii4_default>;
98 use-ncsi;
Tom Rini762f85b2024-07-20 11:15:10 -060099 mellanox,multi-host;
Tom Rini53633a82024-02-29 12:33:36 -0500100};
101
102&fmc {
103 status = "okay";
104 flash@0 {
105 status = "okay";
106 m25p,fast-read;
107 label = "bmc";
108 spi-rx-bus-width = <4>;
109 spi-max-frequency = <50000000>;
110#include "openbmc-flash-layout-64.dtsi"
111 };
112 flash@1 {
113 status = "okay";
114 m25p,fast-read;
115 label = "bmc2";
116 spi-rx-bus-width = <4>;
117 spi-max-frequency = <50000000>;
118 };
119};
120
121&i2c0 {
122 status = "okay";
123 mctp-controller;
124 bus-frequency = <400000>;
125 multi-master;
126
127 mctp@10 {
128 compatible = "mctp-i2c-controller";
129 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
130 };
131
132 power-sensor@40 {
133 compatible = "adi,adm1278";
134 reg = <0x40>;
135 };
136};
137
138&i2c1 {
139 status = "okay";
140 mctp-controller;
141 bus-frequency = <400000>;
142 multi-master;
143
144 mctp@10 {
145 compatible = "mctp-i2c-controller";
146 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
147 };
148
149 power-sensor@40 {
150 compatible = "adi,adm1278";
151 reg = <0x40>;
152 };
153};
154
155&i2c2 {
156 status = "okay";
157 mctp-controller;
158 bus-frequency = <400000>;
159 multi-master;
160
161 mctp@10 {
162 compatible = "mctp-i2c-controller";
163 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
164 };
165
166 power-sensor@40 {
167 compatible = "adi,adm1278";
168 reg = <0x40>;
169 };
170};
171
172&i2c3 {
173 status = "okay";
174 mctp-controller;
175 bus-frequency = <400000>;
176 multi-master;
177
178 mctp@10 {
179 compatible = "mctp-i2c-controller";
180 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
181 };
182
183 power-sensor@40 {
184 compatible = "adi,adm1278";
185 reg = <0x40>;
186 };
187};
188
189&i2c4 {
190 status = "okay";
191 mctp-controller;
192 bus-frequency = <400000>;
193 multi-master;
194
195 mctp@10 {
196 compatible = "mctp-i2c-controller";
197 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
198 };
199
200 power-sensor@40 {
201 compatible = "adi,adm1278";
202 reg = <0x40>;
203 };
204};
205
206&i2c5 {
207 status = "okay";
208 mctp-controller;
209 bus-frequency = <400000>;
210 multi-master;
211
212 mctp@10 {
213 compatible = "mctp-i2c-controller";
214 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
215 };
216
217 power-sensor@40 {
218 compatible = "adi,adm1278";
219 reg = <0x40>;
220 };
221};
222
223&i2c6 {
224 status = "okay";
225 mctp-controller;
226 bus-frequency = <400000>;
227 multi-master;
228
229 mctp@10 {
230 compatible = "mctp-i2c-controller";
231 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
232 };
233
234 power-sensor@40 {
235 compatible = "adi,adm1278";
236 reg = <0x40>;
237 };
238};
239
240&i2c7 {
241 status = "okay";
242 mctp-controller;
243 bus-frequency = <400000>;
244 multi-master;
245
246 mctp@10 {
247 compatible = "mctp-i2c-controller";
248 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
249 };
250
251 power-sensor@40 {
252 compatible = "adi,adm1278";
253 reg = <0x40>;
254 };
255};
256
257&i2c8 {
258 status = "okay";
259 bus-frequency = <400000>;
260 i2c-mux@70 {
261 compatible = "nxp,pca9544";
262 idle-state = <0>;
263 i2c-mux-idle-disconnect;
264 reg = <0x70>;
265 };
266};
267
268&i2c9 {
269 status = "okay";
270 bus-frequency = <400000>;
271 i2c-mux@71 {
272 compatible = "nxp,pca9544";
273 idle-state = <0>;
274 i2c-mux-idle-disconnect;
275 reg = <0x71>;
276 };
277};
278
279&i2c10 {
280 status = "okay";
281 bus-frequency = <400000>;
282};
283
284&i2c11 {
285 status = "okay";
286 power-sensor@10 {
287 compatible = "adi, adm1272";
288 reg = <0x10>;
289 };
290
291 power-sensor@12 {
292 compatible = "adi, adm1272";
293 reg = <0x12>;
294 };
295
296 gpio@20 {
297 compatible = "nxp,pca9555";
298 reg = <0x20>;
299 gpio-controller;
300 #gpio-cells = <2>;
301 };
302
303 gpio@21 {
304 compatible = "nxp,pca9555";
305 reg = <0x21>;
306 gpio-controller;
307 #gpio-cells = <2>;
308 };
309
310 gpio@22 {
311 compatible = "nxp,pca9555";
312 reg = <0x22>;
313 gpio-controller;
314 #gpio-cells = <2>;
315 };
316
317 gpio@23 {
318 compatible = "nxp,pca9555";
319 reg = <0x23>;
320 gpio-controller;
321 #gpio-cells = <2>;
322 };
323
324 temperature-sensor@48 {
325 compatible = "ti,tmp75";
326 reg = <0x48>;
327 };
328
329 temperature-sensor@49 {
330 compatible = "ti,tmp75";
331 reg = <0x49>;
332 };
333
334 temperature-sensor@4a {
335 compatible = "ti,tmp75";
336 reg = <0x4a>;
337 };
338
339 temperature-sensor@4b {
340 compatible = "ti,tmp75";
341 reg = <0x4b>;
342 };
343
344 eeprom@54 {
345 compatible = "atmel,24c256";
346 reg = <0x54>;
347 };
348};
349
350&i2c12 {
351 status = "okay";
352 bus-frequency = <400000>;
353
354 temperature-sensor@48 {
355 compatible = "ti,tmp75";
356 reg = <0x48>;
357 };
358
359 eeprom@50 {
360 compatible = "atmel,24c128";
361 reg = <0x50>;
362 };
363
364 rtc@6f {
365 compatible = "nuvoton,nct3018y";
366 reg = <0x6f>;
367 };
368};
369
370&i2c13 {
371 status = "okay";
Tom Rini762f85b2024-07-20 11:15:10 -0600372 bus-frequency = <100000>;
373 multi-master;
374
375 ipmb@10 {
376 compatible = "ipmb-dev";
377 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
378 i2c-protocol;
379 };
Tom Rini53633a82024-02-29 12:33:36 -0500380};
381
382&i2c14 {
383 status = "okay";
384 bus-frequency = <400000>;
385 adc@1d {
386 compatible = "ti,adc128d818";
387 reg = <0x1d>;
388 ti,mode = /bits/ 8 <2>;
389 };
390
391 adc@35 {
392 compatible = "ti,adc128d818";
393 reg = <0x35>;
394 ti,mode = /bits/ 8 <2>;
395 };
396
397 adc@37 {
398 compatible = "ti,adc128d818";
399 reg = <0x37>;
400 ti,mode = /bits/ 8 <2>;
401 };
402
403 power-sensor@40 {
404 compatible = "ti,ina230";
405 reg = <0x40>;
406 };
407
408 power-sensor@41 {
409 compatible = "ti,ina230";
410 reg = <0x41>;
411 };
412
413 power-sensor@42 {
414 compatible = "ti,ina230";
415 reg = <0x42>;
416 };
417
418 power-sensor@43 {
419 compatible = "ti,ina230";
420 reg = <0x43>;
421 };
422
423 power-sensor@44 {
424 compatible = "ti,ina230";
425 reg = <0x44>;
426 };
427
428 temperature-sensor@4e {
429 compatible = "ti,tmp75";
430 reg = <0x4e>;
431 };
432
433 temperature-sensor@4f {
434 compatible = "ti,tmp75";
435 reg = <0x4f>;
436 };
437
438 eeprom@51 {
439 compatible = "atmel,24c128";
440 reg = <0x51>;
441 };
442
443 i2c-mux@71 {
444 compatible = "nxp,pca9846";
445 #address-cells = <1>;
446 #size-cells = <0>;
447
448 idle-state = <0>;
449 i2c-mux-idle-disconnect;
450 reg = <0x71>;
451
452 i2c@0 {
453 #address-cells = <1>;
454 #size-cells = <0>;
455 reg = <0>;
456
457 adc@1f {
458 compatible = "ti,adc128d818";
459 reg = <0x1f>;
460 ti,mode = /bits/ 8 <2>;
461 };
462
463 pwm@20{
464 compatible = "max31790";
465 reg = <0x20>;
466 #address-cells = <1>;
467 #size-cells = <0>;
468 };
469
470 gpio@22{
471 compatible = "ti,tca6424";
472 reg = <0x22>;
473 };
474
475 pwm@23{
476 compatible = "max31790";
477 reg = <0x23>;
478 #address-cells = <1>;
479 #size-cells = <0>;
480 };
481
482 adc@33 {
483 compatible = "maxim,max11615";
484 reg = <0x33>;
485 };
486
487 eeprom@52 {
488 compatible = "atmel,24c128";
489 reg = <0x52>;
490 };
491
492 gpio@61 {
493 compatible = "nxp,pca9552";
494 reg = <0x61>;
495 #address-cells = <1>;
496 #size-cells = <0>;
497 gpio-controller;
498 #gpio-cells = <2>;
499 };
500 };
501
502 i2c@1 {
503 #address-cells = <1>;
504 #size-cells = <0>;
505 reg = <0>;
506
507 adc@1f {
508 compatible = "ti,adc128d818";
509 reg = <0x1f>;
510 ti,mode = /bits/ 8 <2>;
511 };
512
513 pwm@20{
514 compatible = "max31790";
515 reg = <0x20>;
516 #address-cells = <1>;
517 #size-cells = <0>;
518 };
519
520 gpio@22{
521 compatible = "ti,tca6424";
522 reg = <0x22>;
523 };
524
525 pwm@23{
526 compatible = "max31790";
527 reg = <0x23>;
528 #address-cells = <1>;
529 #size-cells = <0>;
530 };
531
532 adc@33 {
533 compatible = "maxim,max11615";
534 reg = <0x33>;
535 };
536
537 eeprom@52 {
538 compatible = "atmel,24c128";
539 reg = <0x52>;
540 };
541
542 gpio@61 {
543 compatible = "nxp,pca9552";
544 reg = <0x61>;
545 #address-cells = <1>;
546 #size-cells = <0>;
547 gpio-controller;
548 #gpio-cells = <2>;
549 };
550 };
551 };
552
553 i2c-mux@73 {
554 compatible = "nxp,pca9544";
555 #address-cells = <1>;
556 #size-cells = <0>;
557
558 idle-state = <0>;
559 i2c-mux-idle-disconnect;
560 reg = <0x73>;
561
562 i2c@0 {
563 #address-cells = <1>;
564 #size-cells = <0>;
565 reg = <0>;
566
567 adc@35 {
568 compatible = "maxim,max11617";
569 reg = <0x35>;
570 };
571 };
572
573 i2c@1 {
574 #address-cells = <1>;
575 #size-cells = <0>;
576 reg = <0>;
577
578 adc@35 {
579 compatible = "maxim,max11617";
580 reg = <0x35>;
581 };
582 };
583 };
584};
585
586&i2c15 {
587 status = "okay";
588 mctp-controller;
589 multi-master;
590 bus-frequency = <400000>;
591
592 mctp@10 {
593 compatible = "mctp-i2c-controller";
594 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
595 };
596
597 i2c-mux@72 {
598 compatible = "nxp,pca9544";
599 idle-state = <0>;
600 i2c-mux-idle-disconnect;
601 reg = <0x72>;
602 };
603};
604
605&adc0 {
Tom Rini53633a82024-02-29 12:33:36 -0500606 status = "okay";
607 pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
608 &pinctrl_adc2_default &pinctrl_adc3_default
609 &pinctrl_adc4_default &pinctrl_adc5_default
610 &pinctrl_adc6_default &pinctrl_adc7_default>;
611};
612
613&adc1 {
Tom Rini53633a82024-02-29 12:33:36 -0500614 status = "okay";
615 pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default>;
616};
617
618
619&ehci0 {
620 status = "okay";
621};
622
623&ehci1 {
624 status = "okay";
625};
626
627&uhci {
628 status = "okay";
629};