Issue链接
背景
当前散热相关配置导入导出项不支持在thermal_mgmt组件进行导入导出,为满足thermal_mgmt组件配置导入导出能力,新增thermal_mgmt.json定制化项,并需与历史版本保证兼容性
决策点
决策点1:迁移散热相关配置导入导出项至thermal_mgmt
决策点2:迁移散热相关定制项至thermal_mgmt
详细描述
决策点1:迁移散热相关配置导入导出项至thermal_mgmt
| 配置项名称 | 配置项类别 | 配置项 | 归属组件 | 取值说明 | 导入导出类型 | 导出后是否可直接导入(无修改) |
|---|---|---|---|---|---|---|
| 风扇控制模式 | Cooling | Mode | thermal_mgmt | 整型,0,1,2,分别表示自动模式,手动模式,混合模式 | ImportAndExport | 是 |
| 手动模式下风扇转速级别 | Cooling | Level | thermal_mgmt | 整型,[0, 100] | ImportAndExport | 是 |
| 智能调速模式 | Cooling | SmartCoolingMode | thermal_mgmt | 整型,16,17,18,19分别表示节能模式,低噪模式,高性能模式,自定义模式 | ImportAndExport | 是 |
| 自定义进风口温度转速区间 | Cooling | CustomInletSpeedRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为0,最大值为100 | ExportOnly | 是 |
| 自定义硬盘温度转速区间 | Cooling | CustomDiskSpeedRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为0,最大值为100 | ExportOnly | 是 |
| 自定义出风口目标温度 | Cooling | CustomOutletTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义出风口目标温度区间 | Cooling | CustomOutletTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义CPU核温目标温度 | Cooling | CustomCpuCoremTobj | thermal_mgmt | 整型,[-127, 128] | ImportAndExport | 是 |
| 自定义CPU核温目标温度最小值 | Cooling | CustomCpuCoremTobjRangeMin | thermal_mgmt | 整型,[-127, 128] | ExportOnly | 是 |
| 自定义CPU核温目标温度最大值 | Cooling | CustomCpuCoremTobjRangeMax | thermal_mgmt | 整型,[-127, 128] | ExportOnly | 是 |
| 自定义硬盘目标温度 | Cooling | CustomDiskTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义硬盘目标温度区间 | Cooling | CustomDiskTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义内存目标温度 | Cooling | CustomMemoryTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义内存目标温度区间 | Cooling | CustomMemoryTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义PCH目标温度 | Cooling | CustomPCHTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义PCH目标温度区间 | Cooling | CustomPCHTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义VRD目标温度 | Cooling | CustomVRDTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义VRD目标温度区间 | Cooling | CustomVRDTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义VDDQ目标温度 | Cooling | CustomVDDQTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义VDDQ目标温度区间 | Cooling | CustomVDDQTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义NPU HBM目标温度 | Cooling | CustomNpuHbmTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义NPU HBM目标温度区间 | Cooling | CustomNpuHbmTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义NPU核目标温度 | Cooling | CustomNpuAiCoreTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义NPU核目标温度区间 | Cooling | CustomNpuAiCoreTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义SOC板进风口目标温度 | Cooling | CustomSoCBoardInletTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义SOC板进风口目标温度区间 | Cooling | CustomSoCBoardInletTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 自定义SOC板出风口目标温度 | Cooling | CustomSoCBoardOutletTobj | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 自定义SOC板出风口目标温度区间 | Cooling | CustomSoCBoardOutletTobjRange | thermal_mgmt | array,大小为2,第一个值表示最小值,第二个值表示最大值,取值范围最小值为-127,最大值为128 | ExportOnly | 是 |
| 环温调速区间 | Policy1Class | EnvRangeRdL | thermal_mgmt | 数组,数组中每一个数据取值[-128, 127] | ImportAndExport | 是 |
| 线性调速策略Id | CoolingPolicy | Id | thermal_mgmt | 整型,[1, 65535] | ExportOnly | 是 |
| 线性调速策略温度区间左值 | CoolingPolicy | TemperatureRangeCelsiusLow | thermal_mgmt | 数组,数组中每一个数据取值[-128, 127] | ImportAndExport | 是 |
| 线性调速策略温度区间右值 | CoolingPolicy | TemperatureRangeCelsiusHigh | thermal_mgmt | 数组,数组中每一个数据取值[-128, 127] | ImportAndExport | 是 |
| 线性调速策略转速区间左值 | CoolingPolicy | PWMRangeLow | thermal_mgmt | 数组,数组中每一个数据取值[-128, 127] | ImportAndExport | 是 |
| 线性调速策略转速区间右值 | CoolingPolicy | PWMRangeHigh | thermal_mgmt | 数组,数组中每一个数据取值[-128, 127] | ImportAndExport | 是 |
| 线性调速策略迟滞量 | CoolingPolicy | Hysteresis | thermal_mgmt | 整型,[0, 100] | ImportAndExport | 是 |
| 目标调速策略Id | CoolingRequirement | Id | thermal_mgmt | 整型,[1, 65535] | ExportOnly | 是 |
| 目标调速策略目标温度值 | CoolingRequirement | TargetTemperatureCelsius | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 目标调速策略满转温度值 | CoolingRequirement | ThresholdTemperatureCelsius | thermal_mgmt | 整型,[-128, 127] | ImportAndExport | 是 |
| 智能调速模式目标温度值 | CoolingRequirement | SmartCoolingTargetTemperatureCelsius | thermal_mgmt | 数组,数组中每一个数据取值[-128, 127] | ImportAndExport | 是 |
| 目标调速策略失效转速值 | CoolingRequirement | FailoverPercent | thermal_mgmt | 整型,[0, 100] | ImportAndExport | 是 |
决策点2:迁移散热相关定制项至thermal_mgmt
| 定制化项名称 | 定制化项 | 归属组件 | 取值说明 | 默认值 | 处理逻辑(伪代码) |
|---|---|---|---|---|---|
| 散热模式 | BMCSet_Thermal_Policy | thermal_mgmt | 定制散热模式,取值范围:16: Energy saving mode(节能模式)17: Low noise mode(低噪声模式)18: High performance mode(高性能模式)19: Custom mode(用户自定义模式)其他参数值:返回参数错误注:SmartCooling使能状态在APP内部控制,无对应定制项 | 16 | if (SmartCooling使能状态 == 1) if (BMCSet_Thermal_Policy == 空) 设置进风口区间调速策略为16 else 设置散热模式为BMCSet_Thermal_Policy的值else 返回不支持错误 |
| 自定义散热模式进风口区间调速策略 | Custom_Inlet_Temp_Level | thermal_mgmt | 定制自定义散热模式进风口区间调速策略,第一个参数表示level第2 ~ level+1 个参数表示 进风口温度区间第level+2 ~ 2*level+2个参数表示对应的调速区间范围例3,20,30,40,40,60,80,100 表示温度区间为3档,20度以下转速40%,20~30度转速60%,30~40度转速80%,40度以上转速100%注:SmartCooling使能状态在APP内部控制,无对应定制项 | [3,20,30,40,40,60,80,100] | if (SmartCooling使能状态 == 1) if (Custom_Inlet_Temp_Level == 空) 设置进风口区间调速策略为[3,20,30,40,40,60,80,100] else 设置进风口区间调速策略为Custom_Inlet_Temp_Level的值else 返回不支持错误 |
| 自定义CPU核温目标调速值 | Custom_CoreRemObjTem | thermal_mgmt | 定制自定义CPU核温的目标调速值注:产品需要支持自定义且设置值在温度区间内;SmartCooling使能状态在APP内部控制,无对应定制项 | 65 | if (SmartCooling使能状态 == 1) if (Custom_CoreRemObjTem == 空) 设置CPU核温目标调速值为65 else 设置CPU核温目标调速值为Custom_CoreRemObjTem的值else 返回不支持错误 |
| 自定义出风口核温目标调速值 | Custom_OutletObjTem | thermal_mgmt | 定制自定义出风口的目标调速值注:产品需要支持自定义且设置值在温度区间内;SmartCooling使能状态在APP内部控制,无对应定制项 | 50 | if (SmartCooling使能状态 == 1) if (Custom_CoreRemObjTem == 空) 设置出风口核温目标调速值为50 else 设置出风口核温目标调速值为Custom_OutletObjTem的值else 返回不支持错误 |
| AC上电通电开机场景风扇默认速率比 | BMCSet_FanInitDefaultLevel | thermal_mgmt | 设置AC上电通电开机场景风扇默认速率比,取值范围:50~100,单位:百分比 | 100 | if (BMCSet_FanInitDefaultLevel == 空) 设置默认PWM为100else if (BMCSet_FanInitDefaultLevel >= 50 && BMCSet_FanInitDefaultLevel <= 100) 设置默认PWM为BMCSet_FanInitDefaultLevel的值else 返回参数错误 |
评审结论
1、同意风冷散热相关配置导入导出项迁移至thermal_mgmt组件,不宣称新版本BMC导出的配置文件可以导入低版本BMC,在用户指南、WEB帮助中说明不建议此操作。
2、同意风冷散热相关出厂定制项迁移至thermal_mgmt组件。