nvidia-gpu: add support for PCIe port telemetry
Add xyz.openbmc_project.Inventory.Connector.Port Interface for each PCIe port of a ConnectX device.
PDI patches to extend the xyz.openbmc_project.Inv
nvidia-gpu: add support for PCIe port telemetry
Add xyz.openbmc_project.Inventory.Connector.Port Interface for each PCIe port of a ConnectX device.
PDI patches to extend the xyz.openbmc_project.Inventory.Connector.Port Interface - https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/84653 https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/84652
Tested: Build an image for nvl32-obmc machine with the following patch cherry picked.
https://gerrit.openbmc.org/c/openbmc/openbmc/+/85490
The patch cherry-picks the following patches that are currently under review.
``` 1. device tree https://lore.kernel.org/all/aRbLqH8pLWCQryhu@molberding.nvidia.com/ 2. mctpd patches https://github.com/CodeConstruct/mctp/pull/85 3. u-boot changes https://lore.kernel.org/openbmc/20251121-msx4-v1-0-fc0118b666c1@nvidia.com/T/#t 4. kernel changes as specified in the openbmc patch (for espi) 5. entity-manager changes https://gerrit.openbmc.org/c/openbmc/entity-manager/+/85455 6. platform-init changes https://gerrit.openbmc.org/c/openbmc/platform-init/+/85456 7. spi changes https://lore.kernel.org/all/20251121-w25q01jv_fixup-v1-1-3d175050db73@nvidia.com/ ```
``` root@nvl32-obmc:~# busctl tree xyz.openbmc_project.GpuSensor `- /xyz `- /xyz/openbmc_project |- /xyz/openbmc_project/inventory | `- /xyz/openbmc_project/inventory/pcie_devices | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_0 | | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_0/DOWN_0 | | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_0/DOWN_1 | | `- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_0/UP_0 | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_1 | | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_1/DOWN_0 | | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_1/DOWN_1 | | `- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_1/UP_0 | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_2 | | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_2/DOWN_0 | | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_2/DOWN_1 | | `- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_2/UP_0 | `- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_3 | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_3/DOWN_0 | |- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_3/DOWN_1 | `- /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_3/UP_0 `- /xyz/openbmc_project/sensors
root@nvl32-obmc:~# busctl -l introspect xyz.openbmc_project.GpuSensor /xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_1/DOWN_0 NAME TYPE SIGNATURE RESULT/VALUE FLAGS org.freedesktop.DBus.Introspectable interface - - - .Introspect method - s - org.freedesktop.DBus.Peer interface - - - .GetMachineId method - s - .Ping method - - - org.freedesktop.DBus.Properties interface - - - .Get method ss v - .GetAll method s a{sv} - .Set method ssv - - .PropertiesChanged signal sa{sv}as - - xyz.openbmc_project.Association.Definitions interface - - - .Associations property a(sss) 1 "connected_to" "connecting" "/xyz/openbmc_project/inventory/pcie_devices/Nvidia_ConnectX_1" emits-change xyz.openbmc_project.Inventory.Connector.Port interface - - - .PortProtocol property s "xyz.openbmc_project.Inventory.Connector.Port.PortProtocol.PCIe" emits-change .PortType property s "xyz.openbmc_project.Inventory.Connector.Port.PortType.DownstreamPort" emits-change .Speed property t 34359738368 emits-change .Width property u 16 emits-change ```
Change-Id: I2845f090ac92c8ff6a742ec83c23073e6ea4e1b6 Signed-off-by: Harshit Aghera <haghera@nvidia.com>
show more ...
|