Add "GenerationInUse" and "GenerationSupported" to PCIeDevice interface
Add PCIeDevice properties "GenerationInUse" and "GenerationSupported"
then let managerment APIs like redfish can expose the information.
New property:
GenerationInUse : The PCIe interface generation in use by the device
GenerationSupported: The maximum PCIe generation supported by the device
Dbus Sample output:
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
[...]
xyz.openbmc_project.PCIe.Device interface - - -
.DeviceType property s "SingleFunction" emits-change
.Function0ClassCode property s "0x060400" emits-change
[...]
.GenerationInUse property s "xyz.openbmc_project.Inventory.Item.PCIeSlot.Generations.Gen2" emits-change
Signed-off-by: Spencer Ku <Spencer.Ku@quantatw.com>
Change-Id: Ie1bf12a703dc85c3670487b146fb62f0dbae9908
diff --git a/yaml/xyz/openbmc_project/Inventory/Item/PCIeDevice.interface.yaml b/yaml/xyz/openbmc_project/Inventory/Item/PCIeDevice.interface.yaml
index a8b1865..ab2b49a 100644
--- a/yaml/xyz/openbmc_project/Inventory/Item/PCIeDevice.interface.yaml
+++ b/yaml/xyz/openbmc_project/Inventory/Item/PCIeDevice.interface.yaml
@@ -8,6 +8,16 @@
type: string
description: >
Indicates if the device is MultiFunction or SingleFunction.
+ - name: GenerationInUse
+ type: enum[xyz.openbmc_project.Inventory.Item.PCIeSlot.Generations]
+ default: 'Unknown'
+ description: >
+ The PCIe interface generation in use by the device.
+ - name: GenerationSupported
+ type: enum[xyz.openbmc_project.Inventory.Item.PCIeSlot.Generations]
+ default: 'Unknown'
+ description: >
+ The maximum PCIe generation supported by the device.
- name: Function0ClassCode
type: string