Skip to content

Commit 62270b5

Browse files
author
Michael Shuen
committed
hgxb300: Add I2C mux for CX8 debug I2C in dts
Fixes jira https://jirasw.nvidia.com/browse/DGXOPENBMC-14975
1 parent 8e0e904 commit 62270b5

File tree

1 file changed

+169
-9
lines changed

1 file changed

+169
-9
lines changed

arch/arm/boot/dts/aspeed/aspeed-bmc-nvidia-hgxb300-hmc.dts

Lines changed: 169 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,27 @@
77
#include <dt-bindings/i2c/i2c.h>
88

99
/ {
10-
model = "AST2600 HGXB300 HMC";
11-
compatible = "aspeed,ast2600";
12-
13-
aliases {
14-
serial4 = &uart5;
10+
model = "AST2600 HGXB300 HMC";
11+
compatible = "aspeed,ast2600";
12+
13+
aliases {
14+
serial4 = &uart5;
15+
i2c20 = &i2c5_mux71_0;
16+
i2c21 = &i2c5_mux71_1;
17+
i2c22 = &i2c5_mux71_2;
18+
i2c23 = &i2c5_mux71_3;
19+
i2c24 = &i2c7_mux71_0;
20+
i2c25 = &i2c7_mux71_1;
21+
i2c26 = &i2c7_mux71_2;
22+
i2c27 = &i2c7_mux71_3;
23+
i2c28 = &i2c9_mux71_0;
24+
i2c29 = &i2c9_mux71_1;
25+
i2c30 = &i2c9_mux71_2;
26+
i2c31 = &i2c9_mux71_3;
27+
i2c32 = &i2c10_mux71_0;
28+
i2c33 = &i2c10_mux71_1;
29+
i2c34 = &i2c10_mux71_2;
30+
i2c35 = &i2c10_mux71_3;
1531
};
1632

1733
chosen {
@@ -409,29 +425,173 @@
409425
};
410426
};
411427

412-
// CX8_0 / CX8_1 DBG I2C, CX8_0 / CX8_1 I2C_2 FW update
428+
// CX8_2 / CX8_4 DBG I2C, CX8_2 / CX8_4 I2C_2 FW update
413429
&i2c5 {
414430
status = "okay";
431+
432+
i2c-switch@71 {
433+
compatible = "nxp,pca9546";
434+
#address-cells = <1>;
435+
#size-cells = <0>;
436+
reg = <0x71>;
437+
438+
// interrupt-parent = <&ipic>;
439+
// interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
440+
// interrupt-controller;
441+
// #interrupt-cells = <2>;
442+
443+
i2c5_mux71_0: i2c@0 {
444+
reg = <0>;
445+
#address-cells = <1>;
446+
#size-cells = <0>;
447+
};
448+
449+
i2c5_mux71_1: i2c@1 {
450+
reg = <1>;
451+
#address-cells = <1>;
452+
#size-cells = <0>;
453+
};
454+
455+
i2c5_mux71_2: i2c@2 {
456+
reg = <2>;
457+
#address-cells = <1>;
458+
#size-cells = <0>;
459+
};
460+
461+
i2c5_mux71_3: i2c@3 {
462+
reg = <3>;
463+
#address-cells = <1>;
464+
#size-cells = <0>;
465+
};
466+
};
415467
};
416468

417469
// HMC - FPGA Bus
418470
&i2c6 {
419471
status = "okay";
420472
};
421473

422-
// CX8_0 / CX8_1 DBG I2C, CX8_0 / CX8_1 I2C_2 FW update
474+
// CX8_3 / CX8_1 DBG I2C, CX8_3 / CX8_1 I2C_2 FW update
423475
&i2c7 {
424476
status = "okay";
477+
478+
i2c-switch@71 {
479+
compatible = "nxp,pca9546";
480+
#address-cells = <1>;
481+
#size-cells = <0>;
482+
reg = <0x71>;
483+
484+
// interrupt-parent = <&ipic>;
485+
// interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
486+
// interrupt-controller;
487+
// #interrupt-cells = <2>;
488+
489+
i2c7_mux71_0: i2c@0 {
490+
reg = <0>;
491+
#address-cells = <1>;
492+
#size-cells = <0>;
493+
};
494+
495+
i2c7_mux71_1: i2c@1 {
496+
reg = <1>;
497+
#address-cells = <1>;
498+
#size-cells = <0>;
499+
};
500+
501+
i2c7_mux71_2: i2c@2 {
502+
reg = <2>;
503+
#address-cells = <1>;
504+
#size-cells = <0>;
505+
};
506+
507+
i2c7_mux71_3: i2c@3 {
508+
reg = <3>;
509+
#address-cells = <1>;
510+
#size-cells = <0>;
511+
};
512+
};
425513
};
426514

427-
// CX8_0 / CX8_1 DBG I2C, CX8_0 / CX8_1 I2C_2 FW update
515+
// CX8_8 / CX8_6 DBG I2C, CX8_8 / CX8_6 I2C_2 FW update
428516
&i2c9 {
429517
status = "okay";
518+
519+
i2c-switch@71 {
520+
compatible = "nxp,pca9546";
521+
#address-cells = <1>;
522+
#size-cells = <0>;
523+
reg = <0x71>;
524+
525+
// interrupt-parent = <&ipic>;
526+
// interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
527+
// interrupt-controller;
528+
// #interrupt-cells = <2>;
529+
530+
i2c9_mux71_0: i2c@0 {
531+
reg = <0>;
532+
#address-cells = <1>;
533+
#size-cells = <0>;
534+
};
535+
536+
i2c9_mux71_1: i2c@1 {
537+
reg = <1>;
538+
#address-cells = <1>;
539+
#size-cells = <0>;
540+
};
541+
542+
i2c9_mux71_2: i2c@2 {
543+
reg = <2>;
544+
#address-cells = <1>;
545+
#size-cells = <0>;
546+
};
547+
548+
i2c9_mux71_3: i2c@3 {
549+
reg = <3>;
550+
#address-cells = <1>;
551+
#size-cells = <0>;
552+
};
553+
};
430554
};
431555

432-
// Ethernet SW, CX8_0 / CX8_1 DBG I2C, CX8_0 / CX8_1 I2C_2 FW update
556+
// Ethernet SW, CX8_5 / CX8_7 DBG I2C, CX8_5 / CX8_7 I2C_2 FW update
433557
&i2c10 {
434558
status = "okay";
559+
560+
i2c-switch@71 {
561+
compatible = "nxp,pca9546";
562+
#address-cells = <1>;
563+
#size-cells = <0>;
564+
reg = <0x71>;
565+
566+
// interrupt-parent = <&ipic>;
567+
// interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
568+
// interrupt-controller;
569+
// #interrupt-cells = <2>;
570+
571+
i2c10_mux71_0: i2c@0 {
572+
reg = <0>;
573+
#address-cells = <1>;
574+
#size-cells = <0>;
575+
};
576+
577+
i2c10_mux71_1: i2c@1 {
578+
reg = <1>;
579+
#address-cells = <1>;
580+
#size-cells = <0>;
581+
};
582+
583+
i2c10_mux71_2: i2c@2 {
584+
reg = <2>;
585+
#address-cells = <1>;
586+
#size-cells = <0>;
587+
};
588+
589+
i2c10_mux71_3: i2c@3 {
590+
reg = <3>;
591+
#address-cells = <1>;
592+
#size-cells = <0>;
593+
};
594+
};
435595
};
436596

437597
&i2c12 {

0 commit comments

Comments
 (0)