CANN驱动PCIe错误查询API
dcmi_get_device_pcie_error_cnt【免费下载链接】driver本项目是CANN提供的驱动模块实现基础驱动和资源管理及调度等功能使能昇腾芯片。项目地址: https://gitcode.com/cann/driver函数原型int dcmi_get_device_pcie_error_cnt(int card_id, int device_id, struct dcmi_chip_pcie_err_rate *pcie_err_code_info)功能说明查询芯片的PCIe链路误码信息。参数说明参数名称输入/输出类型描述card_id输入int设备ID当前实际支持的ID通过dcmi_get_card_list接口获取。device_id输入int芯片ID通过dcmi_get_device_id_in_card接口获取。取值范围如下NPU芯片[0, device_id_max-1]。说明device_id_max值为1当device_id为0时表示NPU芯片当device_id为1时表示MCU芯片。pcie_err_code_info输出struct dcmi_chip_pcie_err_rate *struct dcmi_chip_pcie_err_rate {unsigned int reg_deskew_fifo_overflow_intr_status;//是否发生deskew_fifo溢出1表示已发生0表示未发生。unsigned int reg_symbol_unlock_intr_status;//是否发生symbol_unlock事件1表示已发生0表示未发生。unsigned int reg_deskew_unlock_intr_status;//是否发生deskew_unlock事件1表示已发生0表示未发生。unsigned int reg_phystatus_timeout_intr_status;//是否发生phystatus超时事件1表示已发生0表示未发生。unsigned int symbol_unlock_counter;//symbol_unlock错误计数unsigned int pcs_rx_err_cnt;//PCS层接收错误计数unsigned int phy_lane_err_counter;//lane错误计数unsigned int pcs_rcv_err_status;//PCS层接收错误状态每bit映射到每个使用的通道1表示有错误0表示正常。unsigned int symbol_unlock_err_status;//symbol_unlock标志每bit映射到每个使用的通道1表示有错误0表示正常。unsigned int phy_lane_err_status;//lane错误每bit映射到每个使用的通道1表示有错误0表示正常。unsigned int dl_lcrc_err_num;//PCIe DLLP LCRC的错误计数unsigned int dl_dcrc_err_num;//PCIe DLLP DCRC的错误计数};返回值说明类型描述int处理结果成功返回0。失败返回码请参见return_codes。异常处理无。约束说明设备重新启动后请先清除芯片的PCIe链路误码信息。表 1不同部署场景下的支持情况产品形态物理机场景裸机root用户物理机场景裸机运行用户组非root用户物理机普通容器场景root用户Atlas 900 A2 PoD 集群基础单元NNNAtlas 800T A2 训练服务器NNNAtlas 800I A2 推理服务器NNNAtlas 200T A2 Box16 异构子框NNNA200I A2 Box 异构组件NNNAtlas 300I A2 推理卡NNNAtlas 300T A2 训练卡NNN注Y表示支持N表示不支持NA表示不涉及当前未规划此场景。调用示例int ret 0; int card_id 0; int device_id 0; struct dcmi_chip_pcie_err_rate pcie_err_code_info {0}; ret dcmi_get_device_pcie_error_cnt(card_id, device_id, pcie_err_code_info); …【免费下载链接】driver本项目是CANN提供的驱动模块实现基础驱动和资源管理及调度等功能使能昇腾芯片。项目地址: https://gitcode.com/cann/driver创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考