Re: [PATCH v4 0/3] media: imx: Stop stream before disabling IDMA channels

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Hans,

On 1/21/19 11:34 PM, Hans Verkuil wrote:
Hi Steve,

On 01/22/2019 12:35 AM, Steve Longerbeam wrote:
Repeatedly sending a stream off immediately followed by stream on can
eventually cause a complete system hard lockup on the SabreAuto when
streaming from the ADV7180:

while true; do v4l2-ctl  -d4 --stream-mmap --stream-count=3; done

Eventually this either causes the system lockup or EOF timeouts at all
subsequent stream on, until a system reset.

The lockup occurs when disabling the IDMA channels at stream off. Stopping
the video data stream entering the IDMA channel before disabling the
channel itself appears to be a reliable fix for the hard lockup.

In the CSI subdevice, this can be done by disabling the CSI before
disabling the CSI IDMA channel, instead of after. In the IC-PRPENVVF
subdevice, this can be done by stopping upstream before disabling the
PRPENC/VF IDMA channel.
Please let me know when you are satisfied with this patch series and I
can make a pull request for this.

I'm satisfied with it now, it addresses Philipp's concerns from v3.

Also Gael reported successful testing.

Steve



Thanks!

	Hans

History:
v4:
- Disabling SMFC will have no effect if both CSI's are streaming. So
   go back to disabling CSI before channel as in v2, but split up
   csi_idmac_stop such that ipu_csi_disable can still be called within
   csi_stop.

v3:
- Switch to disabling the SMFC before the channel, instead of the CSI
   before the channel.

v2:
- Whitespace fixes
- Add Fixes: and Cc: stable@xxxxxxxxxxxxxxx
- No functional changes.


Steve Longerbeam (3):
   media: imx: csi: Disable CSI immediately after last EOF
   media: imx: csi: Stop upstream before disabling IDMA channel
   media: imx: prpencvf: Stop upstream before disabling IDMA channel

  drivers/staging/media/imx/imx-ic-prpencvf.c | 26 ++++++++-----
  drivers/staging/media/imx/imx-media-csi.c   | 42 +++++++++++++--------
  2 files changed, 44 insertions(+), 24 deletions(-)





[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux