AM62A7: GST sometimes fails to properly retrieve camera data

Part Number: AM62A7

Tool/software:

Hi,

After booting the system, opening multiple SSH terminals and executing multiple pipelines may cause the system to hang intermittently. Both the number of pipelines launched and the time intervals between their launches can affect the occurrence of the freeze.

  1. The shorter the time interval between pipeline executions, ​the higher the probability of a hang.

    • Example: If cms is launched first, followed almost immediately by ir and rgb, the system will freeze consistently.
  2. The greater the number of pipelines launched, ​the higher the probability of a hang.

    • Example:
      • Launching cms immediately after booting has an ​extremely low probability of freezing.
      • Launching ir after cms has successfully started has a ​low probability of freezing.
      • Launching rgb after both cms and ir are running results in a ​significantly higher probability of freezing.

Test Result: Scenario where the initially launched pipeline freezes.

Pipelines started later may freeze at the ​GST log message related to clock synchronization, with no subsequent ​ISP-related logs printed.

The dmesg output is as follows:

By using the devmem2 command to inspect the relevant registers, it was observed that the values of registers 0x301020400x301020600x301020800x30101060, and 0x31011028 remained identical during both ​GST freezes and ​normal GST operation. Specifically, the values were:
0x8010006C0x801000AB0x801000EB0x20000000, and 0x000E0100.

Regarding this issue, I have the following questions:

  1. What could be the possible reasons why GST fails to receive camera image data?
  2. I initially suspect a DMA issue. Aside from the registers at 0x30102020 + 20*j, are there other registers that can be used to check the DMA’s operational status?
    • For example, registers that configure the DMA’s ​source (src) and ​destination (dest) addresses.
  3. Why is the failure of GST to receive camera data an intermittent issue?

TIPS:
The log messages printed after data reception are a debugging tool to monitor whether camera image data frames are successfully received.

Thanks,

Yuwei

  • Hello Yuwei,

    I suspect that this is a Gstreamer issue. Can you try running yavta or v4l2 capture in a similar way and see if you can catch raw images without being frozen? This can help us rule out any CSI Rx related issue.

    Thank you.

    Jianzhong