configurations: Add Nvidia MCTP VDM

DBus Sensor app for GPU Temperature Sensor will use this configuration.

Tested:

Copy the configuration file on gb200nvl-obmc machine and restart the
entity-manager service.

```
root@gb200nvl-obmc:~# rm -rf /var/configuration/
root@gb200nvl-obmc:~# systemctl restart xyz.openbmc_project.EntityManager.service
```

Inventory is properly detected on gb200nvl-obmc machine.

```
root@gb200nvl-obmc:~# busctl tree xyz.openbmc_project.EntityManager
└─ /xyz
  └─ /xyz/openbmc_project
    ├─ /xyz/openbmc_project/EntityManager
    └─ /xyz/openbmc_project/inventory
      └─ /xyz/openbmc_project/inventory/system
        └─ /xyz/openbmc_project/inventory/system/board
          ├─ /xyz/openbmc_project/inventory/system/board/NVIDIA_GB200_1
          │ ├─ /xyz/openbmc_project/inventory/system/board/NVIDIA_GB200_1/NVIDIA_GB200_1_FRU
          │ └─ /xyz/openbmc_project/inventory/system/board/NVIDIA_GB200_1/NVIDIA_GB200_GPU
          └─ /xyz/openbmc_project/inventory/system/board/NVIDIA_HMC
            ├─ /xyz/openbmc_project/inventory/system/board/NVIDIA_HMC/HMC
            └─ /xyz/openbmc_project/inventory/system/board/NVIDIA_HMC/NVIDIA_HMC_FRU

root@gb200nvl-obmc:~# busctl introspect xyz.openbmc_project.EntityManager /xyz/openbmc_project/inventory/system/board/NVIDIA_GB200_1/NVIDIA_GB200_GPU
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.Configuration.NvidiaMctpVdm interface -         -                  -
.Name                                           property  s         "NVIDIA GB200 GPU" emits-change
.Type                                           property  s         "NvidiaMctpVdm"    emits-change
```

Change-Id: Ic317de75c890111881814a02c34f5c82b37575ab
Signed-off-by: Harshit Aghera <haghera@nvidia.com>
Signed-off-by: Deepak Kodihalli <deepak.kodihalli.83@gmail.com>
diff --git a/configurations/nvidia_gb200.json b/configurations/nvidia_gb200.json
index 3926b25..5857018 100644
--- a/configurations/nvidia_gb200.json
+++ b/configurations/nvidia_gb200.json
@@ -5,6 +5,10 @@
             "Bus": "$bus",
             "Name": "NVIDIA GB200 $bus + 1 % 2 FRU",
             "Type": "EEPROM"
+        },
+        {
+            "Name": "NVIDIA GB200 GPU",
+            "Type": "NvidiaMctpVdm"
         }
     ],
     "Name": "NVIDIA GB200 $bus + 1 % 2",
diff --git a/schemas/exposes_record.json b/schemas/exposes_record.json
index 676e878..9bdfb28 100644
--- a/schemas/exposes_record.json
+++ b/schemas/exposes_record.json
@@ -146,6 +146,9 @@
                 },
                 {
                     "$ref": "firmware.json#/$defs/BIOS"
+                },
+                {
+                    "$ref": "nvidia.json#/$defs/NvidiaMctpVdm"
                 }
             ]
         },
diff --git a/schemas/nvidia.json b/schemas/nvidia.json
new file mode 100644
index 0000000..fbcf746
--- /dev/null
+++ b/schemas/nvidia.json
@@ -0,0 +1,20 @@
+{
+    "$schema": "http://json-schema.org/draft-07/schema#",
+    "$defs": {
+        "NvidiaMctpVdm": {
+            "description": "Nvidia device that implements an MCTP VDM protocol to provide sensor readings - implemented in dbus-sensors",
+            "properties": {
+                "Name": {
+                    "description": "A recognisable name for the device",
+                    "type": "string"
+                },
+                "Type": {
+                    "type": "string",
+                    "const": "NvidiaMctpVdm"
+                }
+            },
+            "required": ["Name", "Type"],
+            "type": "object"
+        }
+    }
+}