Hi Laurent, 2014-07-10 0:29 GMT+02:00 Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>: > Hi Enric, > > On Wednesday 09 July 2014 17:56:59 Enric Balletbo Serra wrote: >> 2014-05-16 2:45 GMT+02:00 Laurent Pinchart wrote: >> > Hi Mauro, >> > >> > The following changes since commit >> > ba0d342ecc21fbbe2f6c178f4479944d1fb34f3b: >> > saa7134-alsa: include vmalloc.h (2014-05-13 23:05:15 -0300) >> > >> > are available in the git repository at: >> > git://linuxtv.org/pinchartl/media.git sensors/next >> > >> > for you to fetch changes up to a3a7145c6cecbd9752311b8ae1e431f6755ad5f3: >> > mt9p031: Fix BLC configuration restore when disabling test pattern >> > >> > (2014-05-16 02:43:50 +0200) >> > >> > ---------------------------------------------------------------- >> > >> > Laurent Pinchart (2): >> > mt9p031: Really disable Black Level Calibration in test pattern mode >> > mt9p031: Fix BLC configuration restore when disabling test pattern >> > >> > drivers/media/i2c/mt9p031.c | 53 ++++++++++++++++++++++++++++++---------- >> > >> > 1 file changed, 39 insertions(+), 14 deletions(-) >> >> I'm trying to test omap3-isp and a board with mt9p031 sensor with >> current mainline. For now I'm using tag version 3.15 (which is close >> to current mainline). First, when I tried to use the test patterns I >> only saw a black screen, but after applying these two patches I saw an >> improvement, although I can see the test pattern correctly. >> >> After some modifications the subdevs_group for my board is as follows: >> >> +static struct isp_v4l2_subdevs_group igep00x0_camera_subdevs[] = { >> + { >> + .subdevs = cam0020_primary_subdevs, >> + .interface = ISP_INTERFACE_PARALLEL, >> + .bus = { >> + .parallel = { >> + /* CAM[11:0] */ >> + .data_lane_shift = ISP_LANE_SHIFT_2, >> + /* Sample on falling edge */ >> + .clk_pol = 1, >> + } >> + }, >> + }, >> + { }, >> +}; >> >> As I have some problems I would ask some questions, maybe you can help me. >> >> In the past in the data_lane_shift was ISP_LANE_SHIFT_0, but now, it >> seems I should to use ISP_LANE_SHIFT_2 (CAM[11:0] - as I saw in the >> include file). ISP_LANE_SHIFT_0 is for CAM[13:0] but OMAP3 has only 12 >> data bus signals. Is that right ? > > Not really. The CCDC input is actually 16 bits wide. The ISP parallel bus is > limited to 12 bits, the CSI2 receivers output up to 14 bits, and the bridge > can merge two 8-bit samples into a 16-bit sample for YUV formats. > > When using a 12 bit parallel sensor, unless you want to restrict the dynamic > of the input image, you should use a data lane shift value of 0. This will > cause the CAMEXT[13:0] signal to be mapped to CAM[13:0]. As the parallel bus > is limited to 12 bits, the CAM[13:12] bits will be set to zero. When capturing > from the CCDC output to memory each pixel will be stored on 16 bits, with bits > [15:12] set to zero, and bits [11:0] containing image data. When forwarding > data to the preview engine, which has an input width of 10 bits, the ISP > driver will configure the CCDC video port to output bits [11:2] to the preview > engine, dropping the two LSBs. > Clear now, thank you for the explanations ... >> Another thing is I'm not able to capture the image correctly, also if >> if configure to ouput a test pattern, doesn't looks good. See as >> example [1] and [2]. Do you know what could be the problem ? >> >> For your information these are the pipeline that I'm using : >> >> media-ctl -v -r -l '"mt9p031 1-005d":0->"OMAP3 ISP CCDC":0[1], >> "OMAP3 ISP CCDC":2->"OMAP3 ISP preview":0[1], "OMAP3 ISP >> preview":1->"OMAP3 ISP resizer":0[1], "OMAP3 ISP resizer":1->"OMAP3 >> ISP resizer output":0[1]' >> >> media-ctl -v -f '"mt9p031 1-005d":0[SGRBG12 720x480], "OMAP3 ISP >> CCDC":2[SGRBG8 720x480], "OMAP3 ISP preview":1[UYVY 720x480], "OMAP3 >> ISP resizer":1[UYVY 720x480]' > > I would configure the pipeline with SGRBG10 at the output of the CCDC. The > resolutions you request through the pipeline can't be achieved exactly, as the > sensor can only perform binning/skipping to downscale. The resizer will take > care to scale the image to the requested 720x480, but it will get distorted. > You should use media-ctl -p to see what resolutions the above command actually > sets, and fix the configuration with appropriate cropping if you want to keep > the sensor aspect ratio intact. > Right. with configuration fixed works as expected. Thanks :) >> # Set Vertical Color Bars as test pattern >> yavta -w '0x009f0903 9' /dev/v4l-subdev8 >> >> # Capture data with >> yavta -f UYVY -s 720x480 --capture=5 --skip=1 --file=image-# /dev/video6 >> >> # And convert with >> raw2rgbpnm -s 720x480 image-00000.uyuv image-00000.pnm >> >> Thanks in advance and any help will be appreciate. >> >> Regards, >> Enric >> >> [1] http://downloads.isee.biz/pub/files/tmp/9-Vertical Color Bars.pnm >> [2] http://downloads.isee.biz/pub/files/tmp/9-Vertical Color Bars.uyvy > > -- > Regards, > > Laurent Pinchart > Best regards, Enric -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html