代码位置
在目录fsl-release-bsp/build-fb/tmp/work/imx6qsabresd-poky-linux-gnueabi/imx-lib/1_3.14.28-1.0.0-r0/imx-lib-3.14.28-1.0.0/ipu中
编译完成后有如下文件列表
ipu$ ls
Android.mk libipu.so Makefile mxc_ipu_hl_lib_dummy.c mxc_ipu_hl_lib.h
ipu.h libipu.so.0 mxc_ipu_hl_lib.c mxc_ipu_hl_lib_dummy.o mxc_ipu_lib.c
libipu.so说明
我用的是imxq所以编译链接的是mxc_ipu_hl_lib_dummy.o。mxc_ipu_hl_lib_dummy.c文件内容如下:
int mxc_ipu_lib_task_init(ipu_lib_input_param_t * input,
ipu_lib_overlay_param_t * overlay,
ipu_lib_output_param_t * output,
int mode, ipu_lib_handle_t * ipu_handle)
{
return 0;
}
void mxc_ipu_lib_task_uninit(ipu_lib_handle_t * ipu_handle)
{
return;
}
int mxc_ipu_lib_task_buf_update(ipu_lib_handle_t * ipu_handle,
dma_addr_t new_inbuf_paddr, dma_addr_t new_ovbuf_paddr,
dma_addr_t new_ovbuf_alpha_paddr, void (output_callback)(void *, int),
void * output_cb_arg)
{
return 0;
}
int mxc_ipu_lib_task_control(int ctl_cmd, void * arg, ipu_lib_handle_t * ipu_handle)
{
return 0;
}
int mxc_ipu_lib_ipc_init(void)
{
return 0;
}
全部为空函数,对与imx6q操作ipu,需要使用内核提供的接口
#define IPU_CHECK_TASK _IOWR('I', 0x1, struct ipu_task)
#define IPU_QUEUE_TASK _IOW('I', 0x2, struct ipu_task)
#define IPU_ALLOC _IOWR('I', 0x3, int)
#define IPU_FREE _IOW('I', 0x4, int)