Capture video unstable on AGX Orin

Capture video unstable on AGX Orin
We use the GMSL camera(E-con Systems NileCAM25_CUXVR) to capture video1 and video2 are OK on AGX Xavier (R32.5.1).
We are porting the E-con System NileCAM25_CUXVR driver to AGX Orin (R34.1.1), and capture video1 and video2 unstable in every time.
It had been capture video1 and video2 all OK, but it can’t captre video success every time.
Could you give more comment for imporve it?

Please contact with E-CON to get the driver support.

Thanks

We want to understand the difference of camera mipi of AGX Orin between Xavier, and update the NileCAM25_CUXVR driver to work on AGX Orin.
I had update the device tree from vi to tegea-capture-vi, but it seem capture unstable every time.
Has it any else need to check it?

Check below “Note” and try lower resolution and fps to narrow down.

Skew calibration is required if sensor or deserializer is using DPHY, and the output data rate is > 1.5Gbps.
An initiation deskew signal should be sent by sensor or deserializer to perform the skew calibration. If the deskew signals is not sent, the receiver will stall, and the capture will time out.
You can calculate the output data rate with the following equation:

Output data rate = (sensor or deserializer pixel clock in hertz) * (bits per pixel) / (number of CSI lanes)

I try to capture 1280x720xP120 (16bits) and mipi 2 lane, and the output data rate is < 1.5Gbps.

Check the trace log if any further clues.

The /dev/video1 and /dev/video2 are all no capture video by gstreamer in trace_log_NileCAM25_CUXVR_no_video1_on_AGX_Orin.txt.
trace_log_NileCAM25_CUXVR_no_video1_on_AGX_Orin.txt (12.2 KB)
I don’t see any error infomration(no CSIMUX_FRAME, CHANSEL_FAULT, PIXEL_RUNAWAY, FIFO_OVERFLOW,CHANSEL_NOMATCH) in trace log.

The /dev/video1 capture ok and /dev/video2 no capture video in trace_log_NileCAM25_CUXVR_video1_OK_video2_fail_on_AGX_Orin.txt.
trace_log_NileCAM25_CUXVR_video1_OK_video2_fail_on_AGX_Orin.txt (11.9 MB)

Could AGX Orin get any lock information to know CSI had locked video signal?

What’s lock informatioin?

Hi, @ShaneCCC :

In PCIe, we can read informatin to know PCIe link status (link width is x4, link speed is 5.0GT/sec,…), no input video signal,…

In MIPI-CSI, Could AGX Orin provide information to know MIPI-CSI lane current status(CSI lane, Lane speed,…), input video signal status(MIPI-CSI haded got a complete input video frame/no input video signal)?
Is it need analyze the /sys/kernel/debug/tracing/trace log to know video signal status, MIPI-CSI lane status, MIPI-CSI speed status? or We can read these status from MIPI-CSI register.

You can check the TRM like “NVCSI_PHY_CILA_INTR_STATUS_CILA_0”

The trace tell CHANSEL_NOMATCH that could be the embedded_metadata_height value incorrect in device tree.

Hi @ShaneCCC :
I can’t find the NVCSI_PHY_CILA_INTR_STATUS_CILA_0 in Orin-TRM_DP10508002_v1.0p.pdf.
But I see the NVCSI_PHY_1_CILA_CORRECTABLE_ERR_INTR_STATUS_CILA_0 in TRM.
How to dump these NVCSI regsiter in Orin?

You can try devmem2 to read it.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.