背景
服务器管理南向接口技术要求文档中,电源、风扇的相关接口,属性类型、签名类型以及方法无法满足开发需求,需要补充调整生成接口文档
关联ISSUE
暂无
整体方案
参考最新南向接口文档,根据代码实现进行对比排查,梳理缺失、不一致的点,进行相应补齐
评审点
1、Fans对象新增PWMSetAccessor和PWMGetAccessor私有属性
2、风扇bmc.dev.Fans接口属性SpeedDeviationThresholdPercent修改权限为读写
3、风扇bmc.dev.PWMChannel接口变更为bmc.dev.Fan.PWMChannel
4、风扇bmc.dev.Fan.Oem接口新增StatusErrorCount属性
5、电源bmc.dev.PowerSupply接口属性RefChip属性变更为私有属性
6、电源bmc.dev.PowerSupply.Status接口移除无用属性Presence
7、电源bmc.dev.PowerSupply.Oem接口变更属性PSUExtensionStatus
详细描述
评审点1:Fans对象新增PWMSetAccessor和PWMGetAccessor私有属性
应用场景 : 配置风扇集合批量设置接口
持久化类型 : 不持久化
对象名 :Fans
| 属性名称 | 变化类型 | 签名 | 持久化 | 属性值来源 | 接口说明 |
|---|---|---|---|---|---|
| PWMSetAccessor | 新增属性 | u | 不持久化 | CSR配置 | 风扇PWM批量设置 |
| PWMGetAccessor | 新增属性 | u | 不持久化 | CSR配置 | 风扇PWM批量获取 |
| 配置举例: |
"Fans_0": {
"bmc.dev.Fans": {
"WorkInStandby": 0,
"SpeedDeviationThresholdPercent": 25
},
"PWMSetAccessor": "#/Accessor_PWMSet.Value",
"PWMGetAccessor": "#/Accessor_PWMGet.Value"
}
评审点2:风扇bmc.dev.Fans接口属性SpeedDeviationThresholdPercent修改权限为读写
接口描述:接口承载了风扇集合的信息
接口:bmc.dev.Fans
变更属性权限
| 属性名称 | 签名 | 只读 | 访问权限 | 属性描述 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|---|
| SpeedDeviationThresholdPercent | y | false | Read: ReadOnly Write:BasicSetting |
风扇转速偏差阈值,默认25 | 组件内部维护 | 不持久化 | 无影响 |
评审点3:风扇bmc.dev.PWMChannel接口变更为bmc.dev.Fan.PWMChannel
接口描述:接口描述了风扇通道相关信息
接口:bmc.dev.PWMChannel
变更接口名称
接口:bmc.dev.Fan.PWMChannel
评审点4:风扇bmc.dev.Fan.Oem接口新增StatusErrorCount属性
接口描述:接口承载了风扇自定义的信息
接口:bmc.dev.Fan.Oem
删除属性
| 属性名称 | 签名 | 只读 | 访问权限 | 属性描述 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|---|
| StatusErrorCount | a{su} | true | Read: ReadOnly | 风扇状态异常次数,返回数组分别表示前转子异常次数(FrontErrorCount)、后转子异常次数(RearErrorCount)、前转子停转次数(FrontStopCount)、后转子停转次数(RearStopCount) | 驱动层代码刷新 | 不持久化 | 无影响 |
评审点5:电源bmc.dev.PowerSupply接口属性RefChip属性变更为私有属性
应用场景 : 配置电源引用的Chip对象
持久化类型 : 不持久化
对象名 :OnePower
| 属性名称 | 变化类型 | 签名 | 持久化 | 属性值来源 | 接口说明 |
|---|---|---|---|---|---|
| RefChip | 新增属性 | s | 不持久化 | CSR配置 | 电源芯片引用对象 |
配置举例:
"OnePower_1": {
"PhysicalInterface": "smc",
"bmc.dev.PowerSupply": {
"RefChip": "#/Eeprom_PsuChip",
"SlotNumber": "${Slot}",
"Protocol": "smc",
"SerialNumber": "",
"PartNumber": "",
"DeviceLocator": "PSU${Slot}",
"Position": "EXU",
"IsPartOfSysPower": true,
"UpgradeSupported": false,
"IsSupportPowerOnUpgrade": false
}
}
评审点6:电源bmc.dev.PowerSupply.Status接口移除无用属性Presence
接口描述:接口承载了电源状态的信息
接口:bmc.dev.PowerSupply.Status
| 属性名称 | 签名 | 只读 | 访问权限 | 属性描述 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|---|
| Presence | y | true | Read: ReadOnly | 电源在位状态 | CSR配置 | 不持久化 | 无影响 |
评审点7:电源bmc.dev.PowerSupply.Oem接口变更属性PSUExtensionStatus
接口描述:接口承载了电源自定义的信息
接口:bmc.dev.PowerSupply.Oem
变更属性
变更前:
| 属性名称 | 签名 | 只读 | 访问权限 | 属性描述 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|---|
| PSUExtensionStatus | t | true | Read: ReadOnly | 电源扩展状态信息 | 驱动层从硬件获取 | 不持久化 | 无影响 |
变更后:
| 属性名称 | 签名 | 只读 | 访问权限 | 属性描述 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|---|
| ExtendedPowerStatusLow | u | true | Read: ReadOnly | 扩展电源状态低4字节 | 驱动层从硬件获取 | 不持久化 | 无影响 |
| ExtendedPowerStatusHigh | u | true | Read: ReadOnly | 扩展电源状态高4字节 | 驱动层从硬件获取 | 不持久化 | 无影响 |
评审结论
1、同意Fans对象新增PWMSetAccessor和PWMGetAccessor私有属性,表示风扇PWM批量设置和风扇PWM批量获取的Accessor
2、同意风扇bmc.dev.Fans接口属性SpeedDeviationThresholdPercent修改权限为读写
3、同意风扇bmc.dev.PWMChannel接口变更为bmc.dev.Fan.PWMChannel
4、同意风扇bmc.dev.Fan.Oem接口新增StatusErrorCount属性,类型a{su},表示风扇状态异常次数
5、电源bmc.dev.PowerSupply接口属性RefChip属性保持文档定义,不调整为私有属性
6、电源bmc.dev.PowerSupply.Status接口属性Presence保持文档定义,不进行删除
6、电源bmc.dev.PowerSupply.Oem接口属性PSUExtensionStatus保持文档定义,不进行拆分