cann/driver:DCMI设备组件列表API dcmi_get_device_component_list【免费下载链接】driver本项目是CANN提供的驱动模块实现基础驱动和资源管理及调度等功能使能昇腾芯片。项目地址: https://gitcode.com/cann/driver函数原型int dcmi_get_device_component_list(int card_id, int device_id, enum dcmi_component_type *component_table, unsigned int component_count)功能说明获取可升级组件列表不包含recovery组件。参数说明参数名称输入/输出类型描述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芯片。component_table输出enum dcmi_component_type *返回可升级组件列表具体值如下enum dcmi_component_type {DCMI_COMPONENT_TYPE_NVE,DCMI_COMPONENT_TYPE_XLOADER,DCMI_COMPONENT_TYPE_M3FW,DCMI_COMPONENT_TYPE_UEFI,DCMI_COMPONENT_TYPE_TEE,DCMI_COMPONENT_TYPE_KERNEL,DCMI_COMPONENT_TYPE_DTB,DCMI_COMPONENT_TYPE_ROOTFS,DCMI_COMPONENT_TYPE_IMU,DCMI_COMPONENT_TYPE_IMP,DCMI_COMPONENT_TYPE_AICPU,DCMI_COMPONENT_TYPE_HBOOT1_A,DCMI_COMPONENT_TYPE_HBOOT1_B,DCMI_COMPONENT_TYPE_HBOOT2,DCMI_COMPONENT_TYPE_DDR,DCMI_COMPONENT_TYPE_LP,DCMI_COMPONENT_TYPE_HSM,DCMI_COMPONENT_TYPE_SAFETY_ISLAND,DCMI_COMPONENT_TYPE_HILINK,DCMI_COMPONENT_TYPE_RAWDATA,DCMI_COMPONENT_TYPE_SYSDRV,DCMI_COMPONENT_TYPE_ADSAPP,DCMI_COMPONENT_TYPE_COMISOLATOR,DCMI_COMPONENT_TYPE_CLUSTER,DCMI_COMPONENT_TYPE_CUSTOMIZED,DCMI_COMPONENT_TYPE_SYS_BASE_CONFIG,DCMI_COMPONENT_TYPE_RECOVERY,DCMI_COMPONENT_TYPE_HILINK2,DCMI_COMPONENT_TYPE_LOGIC_BIST,DCMI_COMPONENT_TYPE_MEMORY_BIST,DCMI_COMPONENT_TYPE_ATF,DCMI_COMPONENT_TYPE_USER_BASE_CONFIG,DCMI_COMPONENT_TYPE_BOOTROM,DCMI_COMPONENT_TYPE_MAX,DCMI_UPGRADE_AND_RESET_ALL_COMPONENT 0xFFFFFFF7,DCMI_UPGRADE_ALL_IMAGE_COMPONENT 0xFFFFFFFD,DCMI_UPGRADE_ALL_FIRMWARE_COMPONENT 0xFFFFFFFE,DCMI_UPGRADE_ALL_COMPONENT 0xFFFFFFFF};当前支持DCMI_COMPONENT_TYPE_HBOOT1_A、DCMI_COMPONENT_TYPE_HBOOT1_B、DCMI_COMPONENT_TYPE_HILINK、DCMI_COMPONENT_TYPE_HILINK2。component_count输入unsigned int“component_table”数组的长度表示获取的组件个数。返回值说明类型描述int处理结果成功返回0。失败返回码请参见return_codes。异常处理无。约束说明表 1不同部署场景下的支持情况产品形态物理机场景裸机root用户物理机场景裸机运行用户组非root用户物理机普通容器场景root用户Atlas 900 A2 PoD 集群基础单元YNYAtlas 800T A2 训练服务器YNYAtlas 800I A2 推理服务器YNYAtlas 200T A2 Box16 异构子框YNYA200I A2 Box 异构组件YNYAtlas 300I A2 推理卡YNYAtlas 300T A2 训练卡YNY注Y表示支持N表示不支持NA表示不涉及当前未规划此场景。调用示例… int ret 0; int card_id 0; int device_id 0; unsigned int component_num 0; enum dcmi_component_type *component_table NULL; ret dcmi_get_device_component_count(card_id, device_id, component_num); if (ret ! 0) { // todo记录日志 return ret; } component_table (enum dcmi_component_type *)malloc(sizeof(enum dcmi_component_type) * component_num); if (component_table NULL) { // todo记录日志 return ret; } ret dcmi_get_device_component_list(card_id, device_id, component_table, component_num); if (ret ! 0) { // todo记录日志 free(component_table); return ret; } …【免费下载链接】driver本项目是CANN提供的驱动模块实现基础驱动和资源管理及调度等功能使能昇腾芯片。项目地址: https://gitcode.com/cann/driver创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考