下载
中文
注册

dcmi_set_device_reset接口原型

函数原型

int dcmi_set_device_reset(int card_id, int device_id, enum dcmi_reset_channel channel_type)

功能说明

复位芯片。

参数说明

参数名称

输入/输出

类型

描述

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]。

channel_type

输入

enum dcmi_reset_channel

复位通道。

enum dcmi_reset_channel {

OUTBAND_CHANNEL = 0, // 带外复位

INBAND_CHANNEL // 带内复位

}

返回值

类型

描述

int

处理结果:

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

异常处理

无。

约束说明

需要调用dcmi_set_device_pre_reset接口原型预复位芯片并返回成功后,才能调用该接口进行带外复位。

表1 部署场景

Linux物理机

Linux物理机容器

root用户

运行用户组(非root用户)

root用户

N

N

N

调用示例

… 
int ret = 0;
int card_id = 0;
int device_id = 0;
enum dcmi_reset_channel channel_type = INBAND_CHANNEL;
ret = dcmi_set_device_reset(card_id, device_id, channel_type);
if (ret != 0) {
    //todo:记录日志
    return ret;
}
…