blob: 64075cc41d927574344817ccd6b1f16274cc7a17 [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;
91 mlx,multi-host;
92};
93
94&mac3 {
95 status = "okay";
96 pinctrl-names = "default";
97 pinctrl-0 = <&pinctrl_rmii4_default>;
98 use-ncsi;
99 mlx,multi-host;
100};
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";
372 bus-frequency = <400000>;
373};
374
375&i2c14 {
376 status = "okay";
377 bus-frequency = <400000>;
378 adc@1d {
379 compatible = "ti,adc128d818";
380 reg = <0x1d>;
381 ti,mode = /bits/ 8 <2>;
382 };
383
384 adc@35 {
385 compatible = "ti,adc128d818";
386 reg = <0x35>;
387 ti,mode = /bits/ 8 <2>;
388 };
389
390 adc@37 {
391 compatible = "ti,adc128d818";
392 reg = <0x37>;
393 ti,mode = /bits/ 8 <2>;
394 };
395
396 power-sensor@40 {
397 compatible = "ti,ina230";
398 reg = <0x40>;
399 };
400
401 power-sensor@41 {
402 compatible = "ti,ina230";
403 reg = <0x41>;
404 };
405
406 power-sensor@42 {
407 compatible = "ti,ina230";
408 reg = <0x42>;
409 };
410
411 power-sensor@43 {
412 compatible = "ti,ina230";
413 reg = <0x43>;
414 };
415
416 power-sensor@44 {
417 compatible = "ti,ina230";
418 reg = <0x44>;
419 };
420
421 temperature-sensor@4e {
422 compatible = "ti,tmp75";
423 reg = <0x4e>;
424 };
425
426 temperature-sensor@4f {
427 compatible = "ti,tmp75";
428 reg = <0x4f>;
429 };
430
431 eeprom@51 {
432 compatible = "atmel,24c128";
433 reg = <0x51>;
434 };
435
436 i2c-mux@71 {
437 compatible = "nxp,pca9846";
438 #address-cells = <1>;
439 #size-cells = <0>;
440
441 idle-state = <0>;
442 i2c-mux-idle-disconnect;
443 reg = <0x71>;
444
445 i2c@0 {
446 #address-cells = <1>;
447 #size-cells = <0>;
448 reg = <0>;
449
450 adc@1f {
451 compatible = "ti,adc128d818";
452 reg = <0x1f>;
453 ti,mode = /bits/ 8 <2>;
454 };
455
456 pwm@20{
457 compatible = "max31790";
458 reg = <0x20>;
459 #address-cells = <1>;
460 #size-cells = <0>;
461 };
462
463 gpio@22{
464 compatible = "ti,tca6424";
465 reg = <0x22>;
466 };
467
468 pwm@23{
469 compatible = "max31790";
470 reg = <0x23>;
471 #address-cells = <1>;
472 #size-cells = <0>;
473 };
474
475 adc@33 {
476 compatible = "maxim,max11615";
477 reg = <0x33>;
478 };
479
480 eeprom@52 {
481 compatible = "atmel,24c128";
482 reg = <0x52>;
483 };
484
485 gpio@61 {
486 compatible = "nxp,pca9552";
487 reg = <0x61>;
488 #address-cells = <1>;
489 #size-cells = <0>;
490 gpio-controller;
491 #gpio-cells = <2>;
492 };
493 };
494
495 i2c@1 {
496 #address-cells = <1>;
497 #size-cells = <0>;
498 reg = <0>;
499
500 adc@1f {
501 compatible = "ti,adc128d818";
502 reg = <0x1f>;
503 ti,mode = /bits/ 8 <2>;
504 };
505
506 pwm@20{
507 compatible = "max31790";
508 reg = <0x20>;
509 #address-cells = <1>;
510 #size-cells = <0>;
511 };
512
513 gpio@22{
514 compatible = "ti,tca6424";
515 reg = <0x22>;
516 };
517
518 pwm@23{
519 compatible = "max31790";
520 reg = <0x23>;
521 #address-cells = <1>;
522 #size-cells = <0>;
523 };
524
525 adc@33 {
526 compatible = "maxim,max11615";
527 reg = <0x33>;
528 };
529
530 eeprom@52 {
531 compatible = "atmel,24c128";
532 reg = <0x52>;
533 };
534
535 gpio@61 {
536 compatible = "nxp,pca9552";
537 reg = <0x61>;
538 #address-cells = <1>;
539 #size-cells = <0>;
540 gpio-controller;
541 #gpio-cells = <2>;
542 };
543 };
544 };
545
546 i2c-mux@73 {
547 compatible = "nxp,pca9544";
548 #address-cells = <1>;
549 #size-cells = <0>;
550
551 idle-state = <0>;
552 i2c-mux-idle-disconnect;
553 reg = <0x73>;
554
555 i2c@0 {
556 #address-cells = <1>;
557 #size-cells = <0>;
558 reg = <0>;
559
560 adc@35 {
561 compatible = "maxim,max11617";
562 reg = <0x35>;
563 };
564 };
565
566 i2c@1 {
567 #address-cells = <1>;
568 #size-cells = <0>;
569 reg = <0>;
570
571 adc@35 {
572 compatible = "maxim,max11617";
573 reg = <0x35>;
574 };
575 };
576 };
577};
578
579&i2c15 {
580 status = "okay";
581 mctp-controller;
582 multi-master;
583 bus-frequency = <400000>;
584
585 mctp@10 {
586 compatible = "mctp-i2c-controller";
587 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
588 };
589
590 i2c-mux@72 {
591 compatible = "nxp,pca9544";
592 idle-state = <0>;
593 i2c-mux-idle-disconnect;
594 reg = <0x72>;
595 };
596};
597
598&adc0 {
599 ref_voltage = <2500>;
600 status = "okay";
601 pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
602 &pinctrl_adc2_default &pinctrl_adc3_default
603 &pinctrl_adc4_default &pinctrl_adc5_default
604 &pinctrl_adc6_default &pinctrl_adc7_default>;
605};
606
607&adc1 {
608 ref_voltage = <2500>;
609 status = "okay";
610 pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default>;
611};
612
613
614&ehci0 {
615 status = "okay";
616};
617
618&ehci1 {
619 status = "okay";
620};
621
622&uhci {
623 status = "okay";
624};