Nvidia-Gpu: Support for Nvidia GPU Serial Number, Part Number
Support for serial number and part number fetch is added in inventory
class which uses the Get Inventory Command. Currently we have a retry
policy of 3 retires to account of any failures to get response from the
GPU device.
Tested
- Able to get Serial Number, Part Number updated from the GPU device
```
busctl introspect xyz.openbmc_project.GpuSensor /xyz/openbmc_project/inventory/NVIDIA_GB200_GPU_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.Inventory.Decorator.Asset interface - - -
.PartNumber property s "699-2G153-0210-TS1" emits-change
.SerialNumber property s "1330325220002" emits-change
xyz.openbmc_project.Inventory.Item.Accelerator interface - - -
.Type property s "GPU" emits-change
```
Change-Id: Id2b33a66ff6d5480f8e229fa233528afc0bdcfc0
Signed-off-by: Rohit PAI <ropai@nvidia.com>
diff --git a/src/nvidia-gpu/NvidiaGpuDevice.cpp b/src/nvidia-gpu/NvidiaGpuDevice.cpp
index d7ad846..a13bcfe 100644
--- a/src/nvidia-gpu/NvidiaGpuDevice.cpp
+++ b/src/nvidia-gpu/NvidiaGpuDevice.cpp
@@ -45,7 +45,8 @@
configs(configs), name(escapeName(name)), path(path)
{
inventory = std::make_shared<Inventory>(
- conn, objectServer, name, gpu::DeviceIdentification::DEVICE_GPU);
+ conn, objectServer, name, mctpRequester,
+ gpu::DeviceIdentification::DEVICE_GPU, eid, io);
makeSensors();
}