下载
中文
注册

dcmi_get_pcie_info接口原型

函数原型

int dcmi_get_pcie_info(int card_id, int device_id, struct dcmi_tag_pcie_idinfo *pcie_idinfo)

功能说明

查询芯片的PCIe(Peripheral Component Interconnect Express)信息。

参数说明

参数名称

输入/输出

类型

描述

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

pcie_idinfo

输出

struct dcmi_tag_pcie_idinfo *

PCIe信息。

struct dcmi_tag_pcie_idinfo{

unsigned int deviceid; //设备id

unsigned int venderid; //厂商id

unsigned int subvenderid; //厂商子id

unsigned int subdeviceid; //设备子id

unsigned int bdf_deviceid; // BDF(Bus,Device,Function)中的设备ID

unsigned int bdf_busid; // BDF(Bus,Device,Function)中的总线ID

unsigned int bdf_funcid; // BDF(Bus,Device,Function)中的功能ID

};

返回值

类型

描述

int

处理结果:

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

异常处理

无。

约束说明

该接口在后续版本将会删除,推荐使用dcmi_get_device_pcie_info接口原型
表1 部署场景

Linux物理机

Linux物理机容器

root用户

运行用户组(非root用户)

root用户

N

N

N

调用示例

… 
int ret = 0;
int card_id = 0;
int device_id = 0;
struct dcmi_tag_pcie_idinfo pcie_idinfo = {0};
ret = dcmi_get_pcie_info(card_id, device_id, &pcie_idinfo);
if (ret != 0){
    //todo:记录日志
    return ret;
} 
…