AnsweredAssumed Answered

OV5647 960p resolution with RAW10 data

Question asked by Abhishek Sharma on Jun 2, 2016
Latest reply on Jun 8, 2016 by Bio_TICFSL



I am trying to run ov5647 camera at 960p resolution with RAW10 format but getting an ERROR : v4l2 capture:  VIDIOC_REQBUFS: not enough buffers . I am able to get video at 1024x768 with RAW10 format.


What I did

In ov5647_mipi.c1) I changed the value at register 0x3034 to 0x1A

2) changed datatype to MIPI_DT_RAW10, pixelformat to V4L2_PIX_FMT_SBGGR10

3) pixel width= 1280, pixel height=960

4) ov5647_data_add.map_sizeimage= ov5647_data.pix.width * ov5647_data.pix.height * 2; /* I420 */


I have tried height*width*3/2 , height*width*4 and height*width*3. But still getting the same error


In mxc_v4l2_capture.c

1)In static inline int valid_mode(u32 palette)  added V4L2_PIX_FMT_SBGGR10

2) In static int mxc_v4l2_s_fmt(cam_data *cam, struct v4l2_format *f, bool try_fmt) added suport for V4L2_PIX_FMT_SBGGR10

case V4L2_PIX_FMT_SBGGR10:

                       size = f->fmt.pix.width * f->fmt.pix.height;

                       bytesperline = f->fmt.pix.width;


3) In void setup_ifparm(cam_data *cam, int init_defrect)

case V4L2_PIX_FMT_SBGGR10:

               csi_param.data_fmt = IPU_PIX_FMT_GENERIC_16;


Please can any one help me out.



Abhishek Sharma