AnsweredAssumed Answered

Work arounds for IPU Lockup on i.MX6?

Question asked by Adrian Cox on Jul 30, 2013
Latest reply on Aug 27, 2013 by Adrian Cox
Branched to a new discussion

I've got a Linux application that uses the IPU for video processing on an i.MX6, based on the IPU examples. The application submits tasks through the /dev/mxc_ipu interface from multiple threads: these include overlay, colour space conversion, and deinterlace operations.There are about 125 IPU operations per second. I set the timeout field on each operation to 10000ms, to ensure that no natural timeouts occur. I'm using a single LVDS display.

 

After what seems to be a random interval, often about an hour, the application will crash. The symptoms are:

  1. All calls to IPU_QUEUE_TASK will fail with ETIMEDOUT.
  2. The kernel log will fill with "imx-ipuv3 imx-ipuv3.0: warning: disable ipu dma channel 14 during its busy state"
  3. A kernel thread [ipu2_task] or [ipu1_task] will be constantly consuming 95% CPU.

At this point the system is unresponsive, and has to be rebooted.

 

Any suggestions?

Outcomes