This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to get 5M RAW DATA by using Leopard 5M-02 mt9p031 sensor?



I met some problems about getting 5M raw data.
I've already got D1 resolution raw data or bmp based on PSP demos. But higher resolution images are required for testing. So I modified demo codes as below:
Origin codes:
switch(cam_input){
  case 1:
     in_std =1;
          input_std_params = mt9t001_std_params[in_std];
               break;
  case 31:
     in_std =1;
  input_std_params = mt9p031_std_params[in_std];
               break;
         case 34:
  in_std =0;
  input_std_params = mt9v034_std_params[in_std];
               break;
           default:
              break;
           }
 
I modified the in_std variable to 3 or 4 or 5, and the function start_capture_streaming () returned success.
And the struct is:


struct capt_std_params mt9p031_std_params[MAX_STDS] = {
    {   
        .std = V4L2_STD_MT9P031_VGA_60FPS,
        .scan_width = 640,
        .scan_height = 480,
        .image_width = 720,
        .image_height = 480,
        .name = "V4L2_STD_MT9P031_VGA_60FPS",
    },
    {
        .std = V4L2_STD_MT9P031_480p_30FPS,
        .scan_width = 720,
        .scan_height = 480,
        .image_width = 720,//1280,
        .image_height = 480,//480,
        .name = "V4L2_STD_MT9P031_480p_30FPS",
    },
    {
        .std = V4L2_STD_MT9P031_576p_25FPS,
        .scan_width = 720,
        .scan_height = 576,
        .image_width = 720,
        .image_height = 480,
        .name = "V4L2_STD_MT9P031_576p_25FPS",
    },
    {
        .std = V4L2_STD_MT9P031_720p_60FPS,
        .scan_width = 1280,
        .scan_height = 720,
        .image_width = 720,
        .image_height = 480,
        .name = "V4L2_STD_MT9P031_720p_60FPS",
    },
    {
        .std = V4L2_STD_MT9P031_1080p_30FPS,
        .scan_width = 1920,
        .scan_height = 1080,
        .image_width = 720,
        .image_height = 480,
        .name = "V4L2_STD_MT9P031_1080p_30FPS",
    },
    {
        .std = V4L2_STD_MT9P031_1944p_14FPS,
        .scan_width = 2592,
        .scan_height = 1944,
        .image_width = 720,
        .image_height = 480,
        .name = "V4L2_STD_MT9P031_1944p_14FPS",
    },
};

But something strange happend when implement that code:
        tv.tv_sec = 2;
        tv.tv_usec = 0;
        r = select (capt_fd + 1, &fds, NULL, NULL, &tv);
and the select returns 0 all the time which means timeout. But the vpfe isr is normal.

Thanks for advice.
Best Regards;