背景
风扇型号识别成功后,会将风扇型号信息保存到数据库(复位持久化),后续仅AC上电场景需要重新进行识别,其余场景优先从数据库恢复识别的风扇型号。当前component_driver组件不支持持久化能力,需要新增属性由thermal_mgmt组件来设置风扇型号来源。
关联ISSUE
暂无
整体方案
风扇型号持久化能力仍由thermal_mgmt组件实现,新增风扇型号来源属性ModelSource,标识风扇型号是来源(默认为空字符串)。
当thermal_mgmt组件通过监听设备树对象创建资源树Fan对象后,优先从数据库读取一下是否有持久化的风扇型号数据:
1、若存在则将型号信息设置给设备树对象,并标记ModelSource为持久化(Persistent),设备树不用再执行风扇识别流程
2、若不存在持久化数据,则标记ModelSource为None,设备树执行风扇识别流程,识别风扇型号完成后,根据识别成功方式标记ModelSource为默认型号(DefaultModel)或风扇识别(Indentify)
评审点
新增风扇接口 bmc.dev.Fan.Oem,新增风扇型号来源属性
详细描述
评审点1:新增风扇接口 bmc.dev.Fan.Oem
变更描述:接口承载了风扇自定义的信息,新增属性同属于该信息的一部分
接口:bmc.dev.Fan.Oem
新增属性
| 属性名称 | 签名 | 只读 | 属性描述 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|
| ModelSource | s | false | 表示风扇型号来源,None:无、Persistent:持久化、DefaultModel:默认型号、Indentify:风扇识别 | 组件内部维护 | 不持久化 | 无影响 |
评审结论
同意新增接口 bmc.dev.Fan.Oem,接口下新增风扇型号来源属性ModelSource,签名为s,取值范围:None:无、Persistent:持久化、DefaultModel:默认型号、Indentify:风扇识别