下载
中文
注册

dcmi_get_device_fan_speed接口原型

函数原型

int dcmi_get_device_fan_speed(int card_id, int device_id, int fan_id, int *speed)

功能说明

查询指定风扇的转速,为风扇实际转速,单位RPM。

参数说明

参数名称

输入/输出

类型

描述

card_id

输入

int

指定NPU管理单元的ID,当前实际支持的ID通过dcmi_get_card_list接口获取。

device_id

输入

int

指定设备编号,通过dcmi_get_device_id_in_card接口获取。取值范围如下:

NPU芯片:[0, device_id_max-1]。

fan_id

输入

int

如果有多个风扇,fan_id从1开始编号,大于等于1表示查询指定fan_id的风扇转速。

如果fan_id为0,则表示查询所有风扇的平均速度

speed

输出

int *

输出风扇转速值数组,由调用者申请。

调用成功后,该空间存储为风扇转速,单位为RPM,即转/分钟。

取值范围:0~(18000±10%)

返回值

类型

描述

int

处理结果:

  • 成功:返回0。
  • 失败:返回码请参见返回码

异常处理

无。

约束说明

表1 部署场景

Linux物理机

Linux物理机容器

root用户

运行用户组(非root用户)

root用户

N

N

N

调用示例

… 
int ret = 0;
int count = 0;
int card_id = 0;
int device_id = 0;
int speed;
ret = dcmi_get_device_fan_count(card_id, device_id, &count);
… 
for (i = 1; i <= count; i++){
    speed = 0;
    ret = dcmi_get_device_fan_speed(card_id, device_id, i, &speed);
    if (ret != 0){
        //todo
        return ret;
    }
… 
}
…