Hi there, I am using the i.MX6D from Digi (connect core 6 sbc) with a mailine kernel (well, 4.14 right now) and have an issue with mipi-csi2 capture. First I will give brief explanation of my setup, and then I will detail the issue. I have a camera sensor (OV2732, but could be any other sensor) connected on a DS90UB953 FPD-Link III serializer. Then a coax cable propagates the signal to a DS90UB954 FPD-Link III deserializer. The DS90UB954 has the ability to work in a pattern generation mode, and I will use it for the rest of the discussion. It is an I²C device, and I have written a basic driver (for the moment ;)) in order to make it visible on the imx6-mipi-csi2 bus as a camera sensor. I can give an access to the driver if necessary. I then program the MC pipeline : media-ctl -l "'ds90ub954 2-0034':0 -> 'imx6-mipi-csi2':0[1]" -v media-ctl -l "'imx6-mipi-csi2':1 -> 'ipu1_csi0_mux':0[1]" -v media-ctl -l "'ipu1_csi0_mux':2 -> 'ipu1_csi0':0[1]" -v media-ctl -l "'ipu1_csi0':2 -> 'ipu1_csi0 capture':0[1]" media-ctl -V "'ds90ub954 2-0034':0 [fmt:RGB888_1X24/1280x720 field:none]" media-ctl -V "'imx6-mipi-csi2':1 [fmt:RGB888_1X24/1280x720 field:none]" media-ctl -V "'ipu1_csi0_mux':2 [fmt:RGB888_1X24/1280x720 field:none]" media-ctl -V "'ipu1_csi0':2 [fmt:RGB888_1X24/1280x720 field:none]" Everything works fine, all nodes are correctly configured, and the DS90UB954 is normaly sending data on 2 lanes, with VC-ID=0. The pattern is 1280x720@30 RGB888. Then, I start a Gstreamer pipeline (I tried with v4l2-ctl and have the same issue though) : GST_DEBUG="v4l2:5" gst-launch-1.0 v4l2src device=/dev/video4 ! video/x-raw, width=1280, height=720, format=RGB ! fakesink And... well, I had to use this patch https://lkml.org/lkml/2017/3/11/270 in order to go further, but I am finishing into : [ 164.077302] imx-ipuv3-csi imx-ipuv3-csi.0: stream ON [ 164.097955] imx-ipuv3-csi imx-ipuv3-csi.0: FI=33333 usec [ 165.129424] ipu1_csi0: EOF timeout [ 165.142395] imx-ipuv3-csi imx-ipuv3-csi.0: stream OFF [ 166.169299] ipu1_csi0: wait last EOF timeout Sounds like a recurrent issue on this ML :). I can think of several things which could explain this, but I tried a lot and am a bit stuck. The clock is set to 800MHz on DS90UB954 side. => Should CSI2_PHY_TST_CTRL1 be 0x32 ? 0x12 ? or 0x4a (ie 400MHz) ? I think I have tried all but still the same issue. Maybe this could be a hint, when booting, the first stream-on leads to: imx6-mipi-csi2: LP-11 timeout, phy_state = 0x00000200 => just a warning now imx6-mipi-csi2: clock lane timeout, phy_state = 0x00000230 The next one leads to the EOF timeout. Here is the dts part BTW : &i2c3 { status = "okay"; ds90ub954: camera@34 { compatible = "ti,ds90ub954"; status = "okay"; reg = <0x34>; clocks = <&clks IMX6QDL_CLK_CKO>; clock-names = "xclk"; port { #address-cells = <1>; #size-cells = <0>; ds90ub954_out0: endpoint { remote-endpoint = <&mipi_csi2_in>; clock-lanes = <0>; data-lanes = <1 2>; }; }; }; }; &mipi_csi { status = "okay"; port@0 { reg = <0>; mipi_csi2_in: endpoint { remote-endpoint = <&ds90ub954_out0>; clock-lanes = <0>; data-lanes = <1 2>; }; }; }; If ayone has a suggestion... Thanks a lot ! Regards, JM