dcmi_get_device_flash_info接口原型
函数原型
int dcmi_get_device_flash_info(int card_id, int device_id, unsigned int flash_index, struct dcmi_flash_info_stru *flash_info)
功能说明
获取芯片内Flash的信息。
参数说明
参数名称 |
输入/输出 |
类型 |
描述 |
---|---|---|---|
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]。 |
flash_index |
输入 |
unsigned int |
Flash索引号,通过dcmi_get_device_flash_count获取。取值范围:[0, flash_count-1] |
flash_info |
输出 |
struct dcmi_flash_info_stru * |
返回Flash信息。 Flash信息结构体定义: struct dcmi_flash_info_stru { unsigned long long flash_id; /* combined device & manufacturer code */ unsigned short device_id; /* device id */ unsigned short vendor; /* the primary vendor id */ unsigned int state; /*flash health, 0x8表示正常,0x10表示非正常*/ unsigned long long size; /* total size in bytes */ unsigned int sector_count; /* number of erase units */ unsigned short manufacturer_id; /* manufacturer id */ }; |
返回值
类型 |
描述 |
---|---|
int |
处理结果:
|
异常处理
无。
约束说明
Linux物理机 |
Linux物理机容器 |
|
root用户 |
运行用户组(非root用户) |
root用户 |
Y |
Y |
Y |
调用示例
… int i; int ret = 0; int card_id = 0; int device_id = 0; struct dcmi_flash_info_stru flash_info = {0}; unsigned int flash_count = 0; ret = dcmi_get_device_flash_count(card_id, device_id,, &flash_count); … For (i = 0; i < flash_count; i++){ ret = dcmi_get_device_flash_info(card_id, device_id, i, &flash_info); if (ret != 0){ //todo:记录日志 return ret; } … } …