接口设计
3 Mar 2025
Read time: 2 minute(s)
用户进程通过 /dev/aic_ve 节点打开 VE 驱动。
IOC_VE_GET_CLIENT
功能说明 |
获取 VE 设备独占权限 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd); |
参数 |
|
返回值 |
0:成功。 <0:失败 |
注意事项 |
无 |
IOC_VE_PUT_CLIENT
功能说明 |
释放 VE 设备独占权限 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd); |
参数定义 |
|
返回值 |
0:成功。 <0:失败 |
注意事项 |
IOC_VE_GET_CLIENT 和 IOC_VE_PUT_CLIENT 的调用必须一一对应 |
IOC_VE_WAIT
功能说明 |
等待 VE 驱动编解码完成,获取 VE 寄存器状态 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd, struct wait_info *info); |
参数 |
|
返回值 |
0:成功。 <0:失败 |
注意事项 |
IOC_VE_WAIT 的调用必须在 IOC_VE_GET_CLIENT 和 IOC_VE_PUT_CLIENT 之间 |
IOC_VE_GET_INFO
功能说明 |
获取 struct ve_info 数据 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd, struct ve_info *info); |
参数 |
|
返回值 |
0:成功。<0:失败 |
注意事项 |
无 |
IOC_VE_SET_INFO
功能说明 |
设置 struct ve_info 数据 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd, struct ve_info *info); |
参数 |
|
返回值 |
0:成功。<0:失败 |
注意事项 |
无 |
IOC_VE_RESET
功能说明 |
VE 驱动硬件复位 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd); |
参数 |
|
返回值 |
0:成功。 IOC_VE_WAIT 的调用必须在 IOC_VE_GET_CLIENT 和 IOC_VE_PUT_CLIENT 之间 |
注意事项 |
无 |
IOC_VE_ADD_DMA_BUF
功能说明 |
加载 DMA buffer, 获取 DMA buffer 物理地址 |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd, struct dma_buf_info *buf); |
参数 |
|
返回值 |
0:成功。<0:失败 |
注意事项 |
无 |
IOC_VE_RM_DMA_BUF
功能说明 |
移除 DMA buffer |
---|---|
接口语法 |
int ioctl(int fd, unsigned long cmd, struct dma_buf_info *buf); |
参数 |
|
返回值 |
0:成功。<0:失败 |
注意事项 |
无 |