dcmi_get_serdes_full_eye接口原型
函数原型
int dcmi_get_serdes_full_eye(int card_id, int device_id, struct dcmi_serdes_full_eye *serdes_full_eye_info)
功能说明
查询指定NPU某个macro端口一条lane的全眼图信息,当前仅支持查询内眼垂直扫描模式下的复合眼图。
参数说明
参数名称 |
输入/输出 |
类型 |
描述 |
|---|---|---|---|
card_id |
输入 |
int |
设备ID,当前实际支持的ID通过dcmi_get_card_num_list接口获取。 |
device_id |
输入 |
int |
芯片ID,通过dcmi_get_device_id_in_card接口获取。取值范围如下: NPU芯片:[0, device_id_max-1]。 |
serdes_full_eye_info |
输入/输出 |
dcmi_serdes_full_eye * |
查询全眼图信息的结构体。该全眼图为内眼垂直扫描模式下的复合眼图。 每个lane的全眼图数据最大包含256组数据点,每组数据里包含偏移量和偏移量对应的两个坐标数据。 相关结构体定义如下 #define SERDES_FULL_EYE_INFO_NUM 256 #define SERDES_FULL_EYE_RESERVED_LEN 8 struct dcmi_serdes_full_eye_base { int offset; // 偏移量 int eye_diagram_0; // 该偏移量对应的坐标数据0 int eye_diagram_1; // 该偏移量对应的坐标数据1 }; typedef struct dcmi_serdes_full_eye { unsigned int macro_id; // 需查询的macro端口号,仅支持h32 macro端口,取值为9或10 unsigned int lane_id; // 需查询的lane unsigned int reserved[SERDES_FULL_EYE_RESERVED_LEN]; // 预留字段 unsigned int info_size; // 返回的全眼图结果数据长度 struct dcmi_serdes_full_eye_base serdes_full_eye[SERDES_FULL_EYE_INFO_NUM]; // 每组全眼图数据信息 } DCMI_SERDES_FULL_EYE; |
返回值说明
类型 |
描述 |
|---|---|
int |
处理结果:
|
异常处理
无。
约束说明
物理机场景(裸机) |
物理机+普通容器场景 |
|
|---|---|---|
root用户 |
运行用户组(非root用户) |
root用户 |
N |
N |
N |
注:Y表示支持;N表示不支持;NA表示不涉及,当前未规划此场景。 |
||
调用示例
…
int ret = 0;
int card_id = 0;
int device_id = 0;
struct dcmi_serdes_full_eye serdes_full_eye_info = {
.macro_id = 9,
.lane_id = 0,
.serdes_full_eye = {0}
}
ret = dcmi_get_serdes_full_eye(card_id, device_id, &serdes_full_eye_info);
…