Vengineerの妄想

人生を妄想しています。

NVIDIA BMC P3809

はじめに

NVIDIA の BMC に、P3809 というものがあり、

  • GH200
  • GB200 NVL72

に搭載されているようです。

今回は、この P3809 に関する情報について、記録に残します。

P3809

github の NVIDIA にて、P3809 を検索してみたら、色々と出てきました。特に、下記の linux の dts ファイルには、色々な情報が載っています。

linux : aspeed-bmc-nvidia-igx-p3809.dts

       model = "AST2600 IGX - p3809";
       compatible = "aspeed,ast2600";

から搭載されている SoC は、ASPEED社の AST2600 です。

SPI関連

&spi2 {
       status = "okay";
       pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_spi2_default>;
       flash@0 {
               status = "okay";
               label = "config";
               spi-max-frequency = <50000000>;
               partitions {
                       compatible = "fixed-partitions";
                       #address-cells = <1>;
                       #size-cells = <1>;

                       u-boot-env@0 {
                               reg = <0x0 0x40000>;               // 256KB at offset 0
                               label = "u-boot-env";
                       };

                       rwfs@40000 {
                               reg = <0x40000 0x1000000>;     // 16MB at offset 0x40000
                               label = "rwfs";
                       };

                       log@3800000 {
                               reg = <0x1040000 0x2800000>;       // 40MB at offset 0x1040000
                               label = "log";
                       };
               };
       };
};

ここいら辺が、ビデオ関連

     gfx_memory: framebuffer {
            size = <0x01000000>;
            alignment = <0x01000000>;
            compatible = "shared-dma-pool";
            reusable;
        };

        video_engine_memory: jpegbuffer {
            size = <0x02000000>;  /* 32M */
            alignment = <0x01000000>;
            compatible = "shared-dma-pool";
            reusable;
        };
&pinctrl {
    pinctrl_emmcg8_default: emmcg8_default {
        function = "EMMC";
        groups = "EMMCG8";
};
};

/* Enable emmc */
&emmc_controller {
        status = "okay";
};

&emmc {
        non-removable;
        bus-width = <8>;
        max-frequency = <200000000>;
    pinctrl-0 = <&pinctrl_emmcg8_default>;
    clk-phase-mmc-hs200 = <9>, <225>;

};

から eMMC が搭載されています。

I2C には、

  • RTL83367 と EPROM (at,24c12)
&i2c9 {
        status = "okay";
        rtl8367@5c {
                compatible = "rtl8367-i2c";
        ethernet-gpios = <&gpio0 ASPEED_GPIO(A, 6) GPIO_ACTIVE_LOW>;
                reg = <0x5c>;
        };

    eeprom@50 {
        compatible = "at,24c128";
        reg = <0x50>;
    };
};
  • LM75 と EPROM (AT24C02)
&i2c10 {
    status = "okay";
    lm75@48 {
        compatible = "ti,tmp75";
        reg = <0x48>;
    };

    eeprom@50 {
        compatible = "at,24c02";
        reg = <0x50>;
    };
};

ここいら辺が、Ethernet

&mdio0 {
       status = "okay";
       ethphy0: ethernet-phy@1 {
               compatible = "ethernet-phy-ieee802.3-c22";
               reg = <1>;
       };
};

/* MAC1 of SoC connected to external PHY */
&mac0 {
       status = "okay";
       phy-mode = "rgmii-rxid";
       phy-handle = <&ethphy0>;

       pinctrl-names = "default";
       pinctrl-0 = <&pinctrl_rgmii1_default>;
};

おわりに

NVIDIA BMC P3809 には、

  • ASPEED AST2600
  • 1GbE
  • USB
  • Serial
  • VGA

が載っていることが分かりました。