【已评审】支持redfish标准接口PCIeDevices资源新增属性

背景

为补齐redfish标准实现,PCIeDevices资源新增标准属性。

关联ISSUE

支持PCIeDevices资源的HotPluggable、ReadyToRemove字段

评审点

评审点1:
redfish接口新增属性ReadyToRemove支持查询系统是否已准备好移除PCIe设备
评审点2:
redfish接口新增属性ReadyToRemove支持设置系统是否已准备好移除PCIe设备
评审点3:
redfish接口新增属性HotPluggable支持查询PCIe插槽是否支持热插拔

详细描述

评审点1:redfish接口新增属性ReadyToRemove支持查询系统是否已准备好移除PCIe设备
URI:/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}
变化类型:新增属性
操作类型:GET

属性名称 取值类型 说明 操作权限 默认值 是否频繁变化并需要屏蔽变化事件 约束
ReadyToRemove boolean,null 系统是否准备好要移除PCIe设备 R:ReadOnly W:BasicSetting false PCle设备支持热插拔

schema说明

"ReadyToRemove": {
    "description": "An indication of whether the PCIe device is prepared by the system for removal.",
    "longDescription": "This property shall indicate whether the PCIe device is ready for removal.  Setting the value to `true` shall cause the service to perform appropriate actions to quiesce the device.  A task may spawn while the device is quiescing.",
    "readonly": false,
    "type": [
        "boolean",
        "null"
    ],
    "versionAdded": "v1_7_0"
}

RspBody响应体示例:

{
    "@odata.context": "/redfish/v1/$metadata#PCIeDevice.PCIeDevice",
    "@odata.id": "/redfish/v1/Chassis/1/PCIeDevices/OCPCard2",
    "@odata.type": "#PCIeDevice.v1_12_0.PCIeDevice",
    ...
    "DeviceType": "MultiFunction",
    "ReadyToRemove": false
    ...
}

评审点2:redfish接口新增属性ReadyToRemove支持设置系统是否已准备好移除PCIe设备
URI:/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}
变化类型:新增属性
操作类型:PATCH

属性名称 取值类型 说明 操作权限 默认值 是否频繁变化并需要屏蔽变化事件 约束
ReadyToRemove boolean,null 系统是否准备好要移除PCIe设备 R:ReadOnly W:BasicSetting false PCle设备支持热插拔

ReqBody请求体示例:

{
    "ReadyToRemove": true
}

评审点3:redfish接口新增属性HotPluggable支持查询PCIe插槽是否支持热插拔
URI:/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}
变化类型:在 “Slot” 下面新增属性
操作类型:GET

属性名称 取值类型 说明 操作权限 默认值 是否频繁变化并需要屏蔽变化事件
Slot{ object
HotPluggable boolean,null PCIe插槽是否支持热插拔 ReadOnly false
}

schema说明

"HotPluggable": {
    "description": "An indication of whether this PCIe slot supports hotplug.",
    "longDescription": "This property shall contain indicating whether this PCIe slot supports hotplug.",
    "readonly": true,
    "type": [
        "boolean",
        "null"
    ],
    "versionAdded": "v1_12_0"
}

RspBody响应体示例:

{
    "@odata.context": "/redfish/v1/$metadata#PCIeDevice.PCIeDevice",
    "@odata.id": "/redfish/v1/Chassis/1/PCIeDevices/OCPCard2",
    "@odata.type": "#PCIeDevice.v1_12_0.PCIeDevice",
    ...
    "Slot": {
        "HotPluggable": true
        "PCIeType": "Gen4",
        "SlotType": "HalfLength",
        "Lanes": 8
    }
    ...
}

评审结论

1、同意redfish标准资源PCIeDevice新增属性ReadyToRemove,用于查询和设置系统是否已准备好移除PCIe设备
URI:/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}
操作类型:GET、PATCH

属性名称 取值类型 说明 操作权限 默认值 是否频繁变化并需要屏蔽变化事件 约束
ReadyToRemove boolean,null 系统是否准备好要移除PCIe设备 GET:ReadOnly
PATCH:BasicSetting
false PCle设备支持热插拔

2、同意redfish标准资源PCIeDevice的 “Slot” 对象新增属性HotPluggable,用于查询PCIe插槽是否支持热插拔
URI:/redfish/v1/Chassis/{ChassisId}/PCIeDevices/{PCIeDeviceId}
操作类型:GET

属性名称 取值类型 说明 操作权限 默认值 是否频繁变化并需要屏蔽变化事件
Slot{ object
HotPluggable boolean,null PCIe设备槽位是否支持热插拔 ReadOnly false
}

遗留问题

无遗留问题