Edit online

接口设计

12 Nov 2024
Read time: 2 minute(s)

Driver 层接口设计

1. aic_dvp_probe
函数原型 int aic_dvp_probe(void)
功能说明 完成中断申请、管理状态初始化等
参数定义
返回值 0,成功;<0,失败
注意事项 -
2. aic_dvp_open
函数原型 int aic_dvp_open(void)
功能说明 使能时钟、使能 DVP 控制器、初始化 Buf 链表信息等
参数定义
返回值 0,成功;<0,失败
注意事项 -
3. aic_dvp_close
函数原型 int aic_dvp_close(void)
功能说明 关闭时钟、关闭 DVP 控制器
参数定义
返回值 0,成功;<0,失败
注意事项 -
4. aic_dvp_set_in_fmt
函数原型 int aic_dvp_set_in_fmt(struct mpp_video_fmt *fmt)
功能说明 设置 DVP 的输入视频格式
参数定义 fmt - 指向 struct mpp_video_fmt 类型的指针
返回值 0,成功;<0,失败
注意事项 fmt 一般是从 Camera 设备中读取到的格式信息
5. aic_dvp_set_out_fmt
函数原型 int aic_dvp_set_out_fmt(struct dvp_out_fmt *fmt)
功能说明 设置 DVP 的输出图像格式
参数定义 fmt - 指向 struct dvp_out_fmt 类型的指针
返回值 0,成功
注意事项 -
6. aic_dvp_stream_on
函数原型 int aic_dvp_stream_on(void)
功能说明 启动视频流
参数定义
返回值 0,成功;<0,失败
注意事项 -
7. aic_dvp_stream_off
函数原型 int aic_dvp_stream_off(void)
功能说明 关闭视频流
参数定义
返回值 0,成功;<0,失败
注意事项 -
8. aic_dvp_req_buf
函数原型 int aic_dvp_req_buf(char *buf, u32 size, struct vin_video_buf *vbuf)
功能说明 按照给定的 Video Buf 配置信息从内存池中申请 Buf
参数定义
buf - 指向内存池的指针
size - 内存池的总大小
vbuf - Video Buf 的配置信息
返回值 0,成功;<0,失败
注意事项 -
9. aic_dvp_q_buf
函数原型 int aic_dvp_q_buf(u32 index)
功能说明 释放指定 index 的 Buf 进入空闲队列(queued_list)
参数定义 index - Buf 的索引号
返回值 0,成功;<0,失败
注意事项 -
10. aic_dvp_dq_buf
函数原型 int aic_dvp_dq_buf(u32 *pindex)
功能说明 从 DVP 处理完成后的队列(done_list)中获取一个 Buf
参数定义 pindex - 用于保存获取到的 Buf 索引号
返回值 0,成功;<0,失败
注意事项 -