下载
中文
注册

dcmi_get_serdes_quality_info接口原型

函数原型

int dcmi_get_serdes_quality_info (int card_id, int device_id, unsigned int macro_id, struct dcmi_serdes_quality_info *serdes_quality_info)

功能说明

查询指定NPU的某个macro的眼图质量。

参数说明

参数名称

输入/输出

类型

描述

card_id

输入

int

指定NPU管理单元的ID,当前实际支持的ID通过dcmi_get_card_list接口获取。

device_id

输入

int

指定设备编号,通过dcmi_get_device_id_in_card接口获取。

macro_id

输入

unsigned int

需查询的macro端口号。

serdes_quality_info

输出

struct dcmi_serdes_quality_info *

查询眼图质量信息结构体

  • 当端口类型为h60时,base_info中snr与heh数据有效,其他数据为0(无效)。
  • 当端口类型为h32时,base_info中snr与heh数据为0(无效),其他数据有效。
  • 当端口断开时,对应端口的lane信息全为0。

相关结构体定义如下

#define SERDES_RESERVED_LEN 64

#define SERDES_INFO_NUM 8

struct dcmi_serdes_quality_base {

unsigned int snr; //信噪比

unsigned int heh; //半眼高

signed int bottom;//眼图的底部

signed int top;//眼图的顶部

signed int left;//眼图的左侧

signed int right;//眼图的右侧

};

typedef struct dcmi_serdes_quality_info {

unsigned int macro_id; // 端口id

unsigned int reserved1; //保留

struct dcmi_serdes_quality_base serdes_quality_info[SERDES_INFO_NUM]; // 端口每条lane眼图信息

unsigned int reserved2[SERDES_RESERVED_LEN]; //预留字节

} DCMI_SERDES_QUALITY_INFO;

返回值

类型

描述

int

处理结果:

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

异常处理

无。

约束说明

表1 部署场景

Linux物理机

Linux物理机容器

root用户

运行用户组(非root用户)

root用户

N

N

N

调用示例

…  
int ret = 0; 
int card_id = 0; 
int device_id = 0; 
int macro_id = 0;
struct dcmi_serdes_quality_info serdes_quality_info = {0}
ret = dcmi_get_serdes_quality_info (card_id, device_id, macro_id, &serdes_quality_info); 
…