hardware environment: CPU: i.MX53, camera: OV5640
purpose: use the video for linux(v4l2) interface to get the picture with 2592x1944
dirver files: ov5640_camera.ko mxc_v4l2_capture.ko
test program: mxc_v4l2_capture.out
add device file normal, at the end will creat /dev/video0 file
root@freescale /$modprobe ov5640_camera
root@freescale /$modprobe mxc_v4l2_capture.out
m=0, rf=30, size = 640*480 …pass
root@freescale /unit_tests$ ./mxc_v4l2_capture.out 00.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 640x480
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
- buf.index 1
- buf.index 2
- buf.index 0
mxc_v4l_close: release resource
m=1, rf=30, size = 320*240 …pass
root@freescale /unit_tests$ ./mxc_v4l2_capture.out -m 1 01.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 320x240
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
- buf.index 1
- buf.index 2
- buf.index 0
mxc_v4l_close: release resource
m=2, rf=30, size = 720x480 …pass
root@freescale /unit_tests$ ./mxc_v4l2_capture.out -m 2 02.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 720x480
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
- buf.index 1
- buf.index 2
- buf.index 0
mxc_v4l_close: release resource
m=3, rf=30, size = 720x576 …pass
root@freescale /unit_tests$ ./mxc_v4l2_capture.out -m 3 03.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 720x576
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
- buf.index 1
- buf.index 2
- buf.index 0
mxc_v4l_close: release resource
m=4, rf=30, size = 1280x720 … fail, mxc_v4l_dqueue timeout
root@freescale /unit_tests$ ./mxc_v4l2_capture.out -fr 30 -m 4 04.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 1280x720
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
mxc_ipu mxc_ipu: IPU Error - IPU_INT_STAT_5 = 0x00100000
ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
VIDIOC_DQBUF failed.
ERROR: v4l2 capture: VIDIOC_QBUF: buffer already queued
VIDIOC_QBUF failed
mxc_ipu mxc_ipu: warning: disable ipu dma channel 20 during its busy state
mxc_v4l_close: release resource
m=5, fr=15, size = 1920x1080 … fail, mxc_v4l_dqueue timeout
root@freescale /unit_tests$ ./mxc_v4l2_capture.out -fr 15 -m 5 05.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 1920x1080
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
mxc_ipu mxc_ipu: IPU Error - IPU_INT_STAT_5 = 0x00100000
ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
VIDIOC_DQBUF failed.
ERROR: v4l2 capture: VIDIOC_QBUF: buffer already queued
VIDIOC_QBUF failed
mxc_ipu mxc_ipu: warning: disable ipu dma channel 20 during its busy state
mxc_v4l_close: release resource
m=6, fr=15, size = 2592x1944 …fail, mxc_v4l_dqueue timeout
root@freescale /unit_tests$ ./mxc_v4l2_capture.out -fr 15 -m 6 06.jpg
in_width = 176, in_height = 144 device name is Mxc Camera
out_width = 176, out_height = 144
top = 0, left = 0
sensor chip is ov5640_camera
sensor frame size is 2592x1944
sensor frame format is YUYV
Width = 176 Height = 144 Image size = 3YUV4208016
pixelformat = 842093913
mxc_ipu mxc_ipu: IDMAC20's EBA0 is not 8-byte aligned
mxc_ipu mxc_ipu: IDMAC20's EBA1 is not 8-byte aligned
ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
VIDIOC_DQBUF failed.
ERROR: v4l2 capture: VIDIOC_QBUF: buffer already queued
VIDIOC_QBUF failed
mxc_v4l_close: release resource
Why the picture size bigger than 720x576 will happen timeout error ? How to fix it?