blob: c118d473a76fb4d5f28c0ca2f039748cb1c1d7c0 [file] [log] [blame]
Tom Rini762f85b2024-07-20 11:15:10 -06001// SPDX-License-Identifier: GPL-2.0-or-later
2// Copyright 2023 Facebook Inc.
3
4/dts-v1/;
5#include "aspeed-g6.dtsi"
6#include <dt-bindings/gpio/aspeed-gpio.h>
7#include <dt-bindings/i2c/i2c.h>
8
9/ {
10 model = "Facebook Harma";
11 compatible = "facebook,harma-bmc", "aspeed,ast2600";
12
13 aliases {
14 serial0 = &uart1;
15 serial1 = &uart2;
16 serial2 = &uart4;
17 serial4 = &uart5;
18
19 i2c20 = &imux20;
20 i2c21 = &imux21;
21 i2c22 = &imux22;
22 i2c23 = &imux23;
23 i2c24 = &imux24;
24 i2c25 = &imux25;
25 i2c26 = &imux26;
26 i2c27 = &imux27;
27 i2c28 = &imux28;
28 i2c29 = &imux29;
29 i2c30 = &imux30;
30 i2c31 = &imux31;
31
32 spi1 = &spi_gpio;
33 };
34
35 chosen {
36 stdout-path = &uart5;
37 };
38
39 memory@80000000 {
40 device_type = "memory";
41 reg = <0x80000000 0x80000000>;
42 };
43
44 iio-hwmon {
45 compatible = "iio-hwmon";
46 io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>,
47 <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>,
48 <&adc1 2>;
49 };
50
51 leds {
52 compatible = "gpio-leds";
53
54 led-0 {
55 label = "bmc_heartbeat_amber";
56 gpios = <&gpio0 ASPEED_GPIO(P, 7) GPIO_ACTIVE_LOW>;
57 linux,default-trigger = "heartbeat";
58 };
59
60 led-1 {
61 label = "fp_id_amber";
62 default-state = "off";
63 gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
64 };
65
66 led-2 {
67 label = "power_blue";
68 default-state = "off";
69 gpios = <&gpio0 124 GPIO_ACTIVE_HIGH>;
70 };
71 };
72
73 spi_gpio: spi-gpio {
74 status = "okay";
75 compatible = "spi-gpio";
76 #address-cells = <1>;
77 #size-cells = <0>;
78
79 gpio-sck = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
80 gpio-mosi = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
81 gpio-miso = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>;
82 num-chipselects = <1>;
83 cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>;
84
85 tpmdev@0 {
86 compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
87 spi-max-frequency = <33000000>;
88 reg = <0>;
89 };
90 };
91};
92
93// HOST BIOS Debug
94&uart1 {
95 status = "okay";
96};
97
98// SOL Host Console
99&uart2 {
100 status = "okay";
101 pinctrl-0 = <>;
102};
103
104// SOL BMC Console
105&uart4 {
106 status = "okay";
107 pinctrl-0 = <>;
108};
109
110// BMC Debug Console
111&uart5 {
112 status = "okay";
113};
114
115// MTIA
116&uart6 {
117 status = "okay";
118};
119
120&uart_routing {
121 status = "okay";
122};
123
124&wdt1 {
125 status = "okay";
126 pinctrl-names = "default";
127 pinctrl-0 = <&pinctrl_wdtrst1_default>;
128 aspeed,reset-type = "soc";
129 aspeed,external-signal;
130 aspeed,ext-push-pull;
131 aspeed,ext-active-high;
132 aspeed,ext-pulse-duration = <256>;
133};
134
135&mac3 {
136 status = "okay";
137 pinctrl-names = "default";
138 pinctrl-0 = <&pinctrl_rmii4_default>;
139 use-ncsi;
140 mellanox,multi-host;
141};
142
143&rtc {
144 status = "okay";
145};
146
147&fmc {
148 status = "okay";
149
150 flash@0 {
151 status = "okay";
152 m25p,fast-read;
153 label = "bmc";
154 spi-max-frequency = <50000000>;
155#include "openbmc-flash-layout-128.dtsi"
156 };
157
158 flash@1 {
159 status = "okay";
160 m25p,fast-read;
161 label = "alt-bmc";
162 spi-max-frequency = <50000000>;
163 };
164};
165
166// BIOS Flash
167&spi2 {
168 status = "okay";
169 pinctrl-names = "default";
170 pinctrl-0 = <&pinctrl_spi2_default>;
171
172 flash@0 {
173 status = "okay";
174 m25p,fast-read;
175 label = "pnor";
176 spi-max-frequency = <12000000>;
177 spi-tx-bus-width = <2>;
178 spi-rx-bus-width = <2>;
179 };
180};
181
182&kcs2 {
183 status = "okay";
184 aspeed,lpc-io-reg = <0xca8>;
185};
186
187&kcs3 {
188 status = "okay";
189 aspeed,lpc-io-reg = <0xca2>;
190};
191
192&i2c0 {
193 status = "okay";
194
195 pwm@5e{
196 compatible = "max31790";
197 reg = <0x5e>;
198 #address-cells = <1>;
199 #size-cells = <0>;
200 };
201};
202
203&i2c1 {
204 status = "okay";
205
206 temperature-sensor@4b {
207 compatible = "ti,tmp75";
208 reg = <0x4b>;
209 };
210
211 // MB NIC FRU
212 eeprom@50 {
213 compatible = "atmel,24c64";
214 reg = <0x50>;
215 };
216};
217
218&i2c2 {
219 status = "okay";
220
221 pwm@5e{
222 compatible = "max31790";
223 reg = <0x5e>;
224 #address-cells = <1>;
225 #size-cells = <0>;
226 };
227};
228
229&i2c3 {
230 status = "okay";
231
232 i2c-mux@70 {
233 compatible = "nxp,pca9543";
234 reg = <0x70>;
235 #address-cells = <1>;
236 #size-cells = <0>;
237
238 imux20: i2c@0 {
239 #address-cells = <1>;
240 #size-cells = <0>;
241 reg = <0>;
242 //Retimer Flash
243 eeprom@50 {
244 compatible = "atmel,24c2048";
245 reg = <0x50>;
246 pagesize = <128>;
247 };
248 };
249 imux21: i2c@1 {
250 #address-cells = <1>;
251 #size-cells = <0>;
252 reg = <1>;
253 retimer@24 {
254 compatible = "asteralabs,pt5161l";
255 reg = <0x24>;
256 };
257 };
258 };
259};
260
261&i2c4 {
262 status = "okay";
263 // PDB FRU
264 eeprom@52 {
265 compatible = "atmel,24c64";
266 reg = <0x52>;
267 };
268
269 power-monitor@69 {
270 compatible = "pmbus";
271 reg = <0x69>;
272 };
273
274 temperature-sensor@49 {
275 compatible = "ti,tmp75";
276 reg = <0x49>;
277 };
278
279 power-monitor@22 {
280 compatible = "lltc,ltc4286";
281 reg = <0x22>;
282 adi,vrange-low-enable;
283 shunt-resistor-micro-ohms = <500>;
284 };
285};
286
287&i2c5 {
288 status = "okay";
289};
290
291&i2c6 {
292 status = "okay";
293
294 i2c-mux@70 {
295 compatible = "nxp,pca9543";
296 reg = <0x70>;
297 #address-cells = <1>;
298 #size-cells = <0>;
299
300 imux22: i2c@0 {
301 #address-cells = <1>;
302 #size-cells = <0>;
303 reg = <0>;
304 };
305 imux23: i2c@1 {
306 #address-cells = <1>;
307 #size-cells = <0>;
308 reg = <1>;
309 };
310 };
311};
312
313&i2c7 {
314 status = "okay";
315};
316
317&i2c8 {
318 status = "okay";
319};
320
321&i2c9 {
322 status = "okay";
323
324 gpio@30 {
325 compatible = "nxp,pca9555";
326 reg = <0x30>;
327 gpio-controller;
328 #gpio-cells = <2>;
329 };
330 gpio@31 {
331 compatible = "nxp,pca9555";
332 reg = <0x31>;
333 gpio-controller;
334 #gpio-cells = <2>;
335
336 gpio-line-names =
337 "","","","",
338 "","","presence-cmm","",
339 "","","","",
340 "","","","";
341 };
342
343 i2c-mux@71 {
344 compatible = "nxp,pca9546";
345 reg = <0x71>;
346 #address-cells = <1>;
347 #size-cells = <0>;
348
349 imux24: i2c@0 {
350 #address-cells = <1>;
351 #size-cells = <0>;
352 reg = <0>;
353 };
354 imux25: i2c@1 {
355 #address-cells = <1>;
356 #size-cells = <0>;
357 reg = <1>;
358 };
359 imux26: i2c@2 {
360 #address-cells = <1>;
361 #size-cells = <0>;
362 reg = <2>;
363 };
364 imux27: i2c@3 {
365 #address-cells = <1>;
366 #size-cells = <0>;
367 reg = <3>;
368 };
369 };
370 // PTTV FRU
371 eeprom@52 {
372 compatible = "atmel,24c64";
373 reg = <0x52>;
374 };
375};
376
377&i2c11 {
378 status = "okay";
379};
380
381&i2c12 {
382 status = "okay";
383 retimer@24 {
384 compatible = "asteralabs,pt5161l";
385 reg = <0x24>;
386 };
387};
388
389&i2c13 {
390 status = "okay";
391
392 i2c-mux@70 {
393 compatible = "nxp,pca9545";
394 reg = <0x70>;
395 #address-cells = <1>;
396 #size-cells = <0>;
397
398 imux28: i2c@0 {
399 #address-cells = <1>;
400 #size-cells = <0>;
401 reg = <0>;
402 };
403 imux29: i2c@1 {
404 #address-cells = <1>;
405 #size-cells = <0>;
406 reg = <1>;
407 //MB FRU
408 eeprom@54 {
409 compatible = "atmel,24c64";
410 reg = <0x54>;
411 };
412 };
413 imux30: i2c@2 {
414 #address-cells = <1>;
415 #size-cells = <0>;
416 reg = <2>;
417 };
418 imux31: i2c@3 {
419 #address-cells = <1>;
420 #size-cells = <0>;
421 reg = <3>;
422 };
423 };
424};
425
426// To Debug card
427&i2c14 {
428 status = "okay";
429 multi-master;
430
431 ipmb@10 {
432 compatible = "ipmb-dev";
433 reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
434 i2c-protocol;
435 };
436};
437
438&i2c15 {
439 status = "okay";
440
441 // SCM FRU
442 eeprom@50 {
443 compatible = "atmel,24c64";
444 reg = <0x50>;
445 };
446
447 // BSM FRU
448 eeprom@56 {
449 compatible = "atmel,24c64";
450 reg = <0x56>;
451 };
452};
453
454&adc0 {
455 aspeed,int-vref-microvolt = <2500000>;
456 status = "okay";
457 pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
458 &pinctrl_adc2_default &pinctrl_adc3_default
459 &pinctrl_adc4_default &pinctrl_adc5_default
460 &pinctrl_adc6_default &pinctrl_adc7_default>;
461};
462
463&adc1 {
464 aspeed,int-vref-microvolt = <2500000>;
465 status = "okay";
466 pinctrl-names = "default";
467 pinctrl-0 = <&pinctrl_adc10_default>;
468};
469
470&ehci0 {
471 status = "okay";
472};
473
474&gpio0 {
475 pinctrl-names = "default";
476 gpio-line-names =
477 /*A0-A7*/ "","","","","","","","",
478 /*B0-B7*/ "","","","",
479 "bmc-spi-mux-select-0","led-identify","","",
480 /*C0-C7*/ "reset-cause-platrst","","","","",
481 "cpu0-err-alert","","",
482 /*D0-D7*/ "","","sol-uart-select","","","","","",
483 /*E0-E7*/ "","","","","","","","",
484 /*F0-F7*/ "","","","","","","","",
485 /*G0-G7*/ "","","","","","","","",
486 /*H0-H7*/ "","","","","","","","",
487 /*I0-I7*/ "","","","","","","","",
488 /*J0-J7*/ "","","","","","","","",
489 /*K0-K7*/ "","","","","","","","",
490 /*L0-L7*/ "","","","",
491 "leakage-detect-alert","","","",
492 /*M0-M7*/ "","","","","","","","",
493 /*N0-N7*/ "led-postcode-0","led-postcode-1",
494 "led-postcode-2","led-postcode-3",
495 "led-postcode-4","led-postcode-5",
496 "led-postcode-6","led-postcode-7",
497 /*O0-O7*/ "","","","","","","","",
498 /*P0-P7*/ "power-button","power-host-control",
499 "reset-button","","led-power","","","",
500 /*Q0-Q7*/ "","","","","","","","",
501 /*R0-R7*/ "","","","","","","","",
502 /*S0-S7*/ "","","","","","","","",
503 /*T0-T7*/ "","","","","","","","",
504 /*U0-U7*/ "","","","","","","led-identify-gate","",
505 /*V0-V7*/ "","","","",
506 "rtc-battery-voltage-read-enable","","","",
507 /*W0-W7*/ "","","","","","","","",
508 /*X0-X7*/ "","","","","","","","",
509 /*Y0-Y7*/ "","","","","","","","",
510 /*Z0-Z7*/ "","","","","","","presence-post-card","";
511};
512
513&gpio1 {
514 gpio-line-names =
515 /*18A0-18A7*/ "ac-power-button","","","","","","","",
516 /*18B0-18B7*/ "","","","","","","","",
517 /*18C0-18C7*/ "","","","","","","","",
518 /*18D0-18D7*/ "","","","","","","","",
519 /*18E0-18E3*/ "","","","","","","","";
520};
521
522&sgpiom0 {
523 status = "okay";
524 max-ngpios = <128>;
525 ngpios = <128>;
526 bus-frequency = <2000000>;
527 gpio-line-names =
528 /*in - out - in - out */
529 /*A0-A3 line 0-7*/
530 "presence-scm-cable","power-config-disable-e1s-0",
531 "","",
532 "","power-config-disable-e1s-1",
533 "","",
534 /*A4-A7 line 8-15*/
535 "","power-config-asic-module-enable",
536 "","power-config-asic-power-good",
537 "","power-config-pdb-power-good",
538 "presence-cpu","smi-control-n",
539 /*B0-B3 line 16-23*/
540 "","nmi-control-n",
541 "","nmi-control-sync-flood-n",
542 "","",
543 "","",
544 /*B4-B7 line 24-31*/
545 "","FM_CPU_SP5R1",
546 "reset-cause-rsmrst","FM_CPU_SP5R2",
547 "","FM_CPU_SP5R3",
548 "","FM_CPU_SP5R4",
549 /*C0-C3 line 32-39*/
550 "","FM_CPU0_SA0",
551 "","FM_CPU0_SA1",
552 "","rt-cpu0-p0-enable",
553 "","rt-cpu0-p1-enable",
554 /*C4-C7 line 40-47*/
555 "","smb-rt-rom-p0-select",
556 "","smb-rt-rom-p1-select",
557 "","i3c-cpu-mux0-oe-n",
558 "","i3c-cpu-mux0-select",
559 /*D0-D3 line 48-55*/
560 "","i3c-cpu-mux1-oe-n",
561 "","i3c-cpu-mux1-select",
562 "","reset-control-bmc",
563 "","reset-control-cpu0-p0-mux",
564 /*D4-D7 line 56-63*/
565 "","reset-control-cpu0-p1-mux",
566 "","reset-control-e1s-mux",
567 "power-host-good","reset-control-mb-mux",
568 "host0-ready","reset-control-smb-e1s-0",
569 /*E0-E3 line 64-71*/
570 "","reset-control-smb-e1s-1",
571 "post-end-n","reset-control-srst",
572 "presence-e1s-0","reset-control-usb-hub",
573 "","reset-control",
574 /*E4-E7 line 72-79*/
575 "presence-e1s-1","reset-control-cpu-kbrst",
576 "","reset-control-platrst",
577 "","bmc-jtag-mux-select-0",
578 "","bmc-jtag-mux-select-1",
579 /*F0-F3 line 80-87*/
580 "","bmc-jtag-select",
581 "","bmc-ready-n",
582 "","bmc-ready-sgpio",
583 "","rt-cpu0-p0-force-enable",
584 /*F4-F7 line 88-95*/
585 "presence-asic-modules-0","rt-cpu0-p1-force-enable",
586 "presence-asic-modules-1","bios-debug-msg-disable",
587 "","uart-control-buffer-select",
588 "","ac-control-n",
589 /*G0-G3 line 96-103*/
590 "FM_CPU_CORETYPE2","",
591 "FM_CPU_CORETYPE1","",
592 "FM_CPU_CORETYPE0","",
593 "FM_BOARD_REV_ID5","",
594 /*G4-G7 line 104-111*/
595 "FM_BOARD_REV_ID4","",
596 "FM_BOARD_REV_ID3","",
597 "FM_BOARD_REV_ID2","",
598 "FM_BOARD_REV_ID1","",
599 /*H0-H3 line 112-119*/
600 "FM_BOARD_REV_ID0","",
601 "","","","","","",
602 /*H4-H7 line 120-127*/
603 "","",
604 "reset-control-pcie-expansion-3","",
605 "reset-control-pcie-expansion-2","",
606 "reset-control-pcie-expansion-1","",
607 /*I0-I3 line 128-135*/
608 "reset-control-pcie-expansion-0","",
609 "FM_EXP_SLOT_ID1","",
610 "FM_EXP_SLOT_ID0","",
611 "","",
612 /*I4-I7 line 136-143*/
613 "","","","","","","","",
614 /*J0-J3 line 144-151*/
615 "","","","","","","","",
616 /*J4-J7 line 152-159*/
617 "SLOT_ID_BCB_0","",
618 "SLOT_ID_BCB_1","",
619 "SLOT_ID_BCB_2","",
620 "SLOT_ID_BCB_3","",
621 /*K0-K3 line 160-167*/
622 "","","","","","","P0_I3C_APML_ALERT_L","",
623 /*K4-K7 line 168-175*/
624 "","","","","","","irq-uv-detect-alert","",
625 /*L0-L3 line 176-183*/
626 "irq-hsc-alert","",
627 "cpu0-prochot-alert","",
628 "cpu0-thermtrip-alert","",
629 "reset-cause-pcie","",
630 /*L4-L7 line 184-191*/
631 "pvdd11-ocp-alert","","","","","","","",
632 /*M0-M3 line 192-199*/
633 "","","","","","","","",
634 /*M4-M7 line 200-207*/
635 "","","","","","","","",
636 /*N0-N3 line 208-215*/
637 "","","","","","","","",
638 /*N4-N7 line 216-223*/
639 "","","","","","","","",
640 /*O0-O3 line 224-231*/
641 "","","","","","","","",
642 /*O4-O7 line 232-239*/
643 "","","","","","","","",
644 /*P0-P3 line 240-247*/
645 "","","","","","","","",
646 /*P4-P7 line 248-255*/
647 "","","","","","","","";
648};