dcmi_get_device_errorinfo接口原型
函数原型
int dcmi_get_device_errorinfo(int card_id, int device_id, int errorcode, unsigned char *errorinfo, int buf_size)
功能说明
查询设备故障描述。
参数说明
参数名称  | 
输入/输出  | 
类型  | 
描述  | 
|---|---|---|---|
card_id  | 
输入  | 
int  | 
指定NPU管理单元ID,当前实际支持的ID通过dcmi_get_card_num_list接口获取。  | 
device_id  | 
输入  | 
int  | 
指定设备编号,通过dcmi_get_device_id_in_card接口获取。取值范围如下: NPU芯片:[0, device_id_max-1]。  | 
errorcode  | 
输入  | 
int  | 
要查询的错误码,通过dcmi_get_device_errorcode_v2接口获取。  | 
errorinfo  | 
输出  | 
unsigned char *  | 
对应的错误字符描述。  | 
buf_size  | 
输入  | 
int  | 
传入的errorinfo大小,固定为48字节。若设置的buffer大小大于48字节,则默认用48字节。  | 
返回值说明
类型  | 
描述  | 
|---|---|
int  | 
处理结果: 
  | 
异常处理
无。
约束说明
该接口在后续版本将会删除,推荐使用dcmi_get_device_errorcode_string接口原型。
Linux物理机  | 
Linux物理机容器  | 
|
|---|---|---|
root用户  | 
运行用户组(非root用户)  | 
root用户  | 
Y  | 
Y  | 
Y  | 
调用示例
#define ERROR_CODE_MAX_NUM  (128)
#define BUF_SIZE          (48)
… 
int ret = 0;
int card_id = 0;
int device_id = 0;
int errorcount = 0;
int error_code_width = 0;
unsigned char errorinfo[BUF_SIZE] = {0};
unsigned char errorcode [ERROR_CODE_MAX_NUM] = {0};
ret = dcmi_get_device_errorcode_v2(card_id, device_id, &errorcount, errorcode, &error_code_width);
if ((ret != 0) || (errorcount == 0)){
    //todo:记录日志
    return ret;
}
ret = dcmi_get_device_errorinfo(card_id, device_id, errorcode[0], errorinfo, BUF_SIZE);
if (ret != 0){ 
    //todo:记录日志
    return ret;
}
…
父主题: 设备管理接口