Message ID | 47542ef8-3e91-b4cd-cc65-95000105f172@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sat, Mar 11, 2017 at 04:30:53PM -0800, Steve Longerbeam wrote: > If it's too difficult to get the imx219 csi-2 transmitter into the > LP-11 state on power on, perhaps the csi-2 receiver can be a little > more lenient on the transmitter and make the LP-11 timeout a warning > instead of error-out. > > Can you try the attached change on top of the version 5 patchset? > > If that doesn't work then you're just going to have to fix the bug > in imx219. That patch gets me past that hurdle, only to reveal that there's another issue: imx6-mipi-csi2: LP-11 timeout, phy_state = 0x00000200 imx219 0-0010: VT: pixclk 139200000Hz line 80742Hz frame 30.0Hz imx219 0-0010: VT: line period 12385ns imx219 0-0010: OP: pixclk 38500000Hz, 2 lanes, 308Mbps peak each imx219 0-0010: OP: 3288 bits/line/lane act=10675ns lp/idle=1710ns ipu1_csi0: csi_idmac_setup failed: -22 ipu1_csi0: pipeline start failed with -22 ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1860 at /home/rmk/git/linux-rmk/drivers/media/v4l2-core/videobuf2-core.c:1340 vb2_start_streaming+0x124/0x1b4 [videobuf2_core]
On 03/12/2017 12:57 PM, Russell King - ARM Linux wrote: > On Sat, Mar 11, 2017 at 04:30:53PM -0800, Steve Longerbeam wrote: >> If it's too difficult to get the imx219 csi-2 transmitter into the >> LP-11 state on power on, perhaps the csi-2 receiver can be a little >> more lenient on the transmitter and make the LP-11 timeout a warning >> instead of error-out. >> >> Can you try the attached change on top of the version 5 patchset? >> >> If that doesn't work then you're just going to have to fix the bug >> in imx219. > > That patch gets me past that hurdle, only to reveal that there's another > issue: Yeah, ipu_cpmem_set_image() failed because it doesn't recognize the bayer formats. Wait, didn't we fix this already? I've lost track. Ah, right, we were going to move this support into the IPUv3 driver, but in the meantime I think you had some patches to get around this. Steve > > imx6-mipi-csi2: LP-11 timeout, phy_state = 0x00000200 > imx219 0-0010: VT: pixclk 139200000Hz line 80742Hz frame 30.0Hz > imx219 0-0010: VT: line period 12385ns > imx219 0-0010: OP: pixclk 38500000Hz, 2 lanes, 308Mbps peak each > imx219 0-0010: OP: 3288 bits/line/lane act=10675ns lp/idle=1710ns > ipu1_csi0: csi_idmac_setup failed: -22 > ipu1_csi0: pipeline start failed with -22 > ------------[ cut here ]------------ > WARNING: CPU: 0 PID: 1860 at /home/rmk/git/linux-rmk/drivers/media/v4l2-core/videobuf2-core.c:1340 vb2_start_streaming+0x124/0x1b4 [videobuf2_core] >
diff --git a/drivers/staging/media/imx/imx6-mipi-csi2.c b/drivers/staging/media/imx/imx6-mipi-csi2.c index d8f931e..720bf4d 100644 --- a/drivers/staging/media/imx/imx6-mipi-csi2.c +++ b/drivers/staging/media/imx/imx6-mipi-csi2.c @@ -224,11 +224,8 @@ static int csi2_dphy_wait_stopstate(struct csi2_dev *csi2) ret = readl_poll_timeout(csi2->base + CSI2_PHY_STATE, reg, (reg & mask) == mask, 0, 500000); - if (ret) { - v4l2_err(&csi2->sd, "LP-11 timeout, phy_state = 0x%08x\n", reg); - return ret; - } - + if (ret) + v4l2_warn(&csi2->sd, "LP-11 timeout, phy_state = 0x%08x\n", reg); return 0; }