hi all:
we use imx6 ipu/csi (no mipi) to capture 16bits yuv data with external hsync/vsync,
( IOMUX = D19~D12=Y, D11~D4=U/V, PCLK+HSYNC+VSYNC)
but the image like this:
we have set csi as gade mode to capture 16 bit generic data,
[INFO] VPU test program built on Sep 12 2013 17:49:15
[INFO] Product Info: i.MX6Q/D/S
[INFO] VPU firmware version: 2.1.9_r36350
[INFO] VPU library version: 5.4.12
[INFO] Format: STD_AVC
[INFO] AVC
[INFO] Output file "hout.mkv" opened.
[INFO] chromaInterleave 1, mapType 0, linear2TiledEnable 0
ioctl_g_fmt_cap, 0x10 status:0x6b
===IPU_PIX_FMT_GENERIC_16:844451913======ipu_csi_init_interface=======104====
CSI_SENS_CONF = 0x00000B01
CSI_SENS_FRM_SIZE = 0x02FF03FF
CSI_ACT_FRM_SIZE = 0x02FF03FF
sensor chip is adv7180_decoder
[INFO]mxc_v4l2_s_param, type:0
sensor frame size is 1024x768
ioctl_g_fmt_cap, 0x10 status:0x6b
===FMT:844451913======mxc_v4l2_s_param=======1401====
===IPU_PIX_FMT_GENERIC_16:844451913======ipu_csi_init_interface=======104====
CSI_SENS_CONF = 0x0000CB01
CSI_SENS_FRM_SIZE = 0x02FF03FF
CSI_ACT_FRM_SIZE = 0x02FF03FF
===FMT:842094158===ch:0===_ipu_ch_param_init=======259====
===IPU_PIX_FMT_NV12======_ipu_ch_param_init=======447====
ch 0 word 0 - 00000000 60000000 00000000 E0000000 000BFC7F
ch 0 word 1 - 03340000 00668000 0087C000 0000FFC0 000003FF
PFS 0x4, BPP 0x0, NPB 0x1f, FW 1023, FH 767, scan_order 0
[WARN] Ctrl-C received
[INFO] Finished encoding: 136 frames
[INFO] enc fps = 113.04
[INFO] total fps= 29.78
Solved! Go to Solution.
Hi chunxin,
Unfortunately, current Freescale Linux BSP doesn't support 16-bit input through CSI (although the IC supports).
Rgds
I also am trying to use ADV7180 on CSI1. In my case though I get a timeout. from what I see above from chun xin, his setup is:
( IOMUX = D19~D12=Y, D11~D4=U/V, PCLK+HSYNC+VSYNC)
In my case, the HSYNC, VSYNC, PIXCLK pins are not used (we do not use external hsync nor vsync). Is PIXCLK critical too?
Also, we only have 8 data pins connected to our decoder. I see that in chun xin's case, he talks about 12 pins for csi data: 8 for Y and 4 for U/V. I am a little bit confused now, as I thought 8 are enough for CSI. Can somebody confirm that in fact 12 data pins are needed for CSI parallel communication?
Thanks.
Hi ( IOMUX = D19D12=Y, D11D4=U/V, PCLKHSYNCVSYNC) is not for BT1120.
BT1120 mode, the 16bits CSI data lines should be CSI_D_19 ~ CSI_D_12, CSI_D9 ~ CSI_D_2).
You should check https://community.freescale.com/message/302798#302798
Thanks for your answer
Hi chunxin,
Unfortunately, current Freescale Linux BSP doesn't support 16-bit input through CSI (although the IC supports).
Rgds
Hi Rogerio,
I am also trying to get video from an FPGA into the imx6 cpu using the CSI0, CSI1 capture ports
- the video I am sending is nominally 1080i, 10-bit, YUV, 4:2:2, with embedded EAV, SAV (no external Hsync, Vsync)
I modified the ov5640 driver to mimic the ov5640 device
I run the following command...
gst-launch -v mfw_v4lsrc ! mfw_v4lsink device=/dev/video16 &
Result is:
- gst-launch runs
- V4LSRC & V4LSINK plug-ins initialised
Message:
- 'Setting pipeline to PAUSED ...'
- 'ERROR: Pipeline doesn't want to pause.'
- 'Setting pipeline to NULL ...'
- 'Total rendered:0'
- Freeing pipeline ...
Is there a simpler way to test the CSI Inputs, and get feedback on what they are seeing?
Thanks,
Phil
As additional info, if I run the unit tests
- mxc_v4l2_overlay, mxc_v4l2_capture etc
- I get 'Unable to open /dev/video0'
So, I guess this means that the device is not installed & intialised correctly..
Hello, sorry for reviving such an old post, but we have a similar problem. Did you solved yours eventually, and if so, how?
Thanks
Most likely your device is not getting probed, the driver does not get executed, hence your missing /dev/video0