We are trying to capture from an FPGA that is constantly sending data through 2-lane MIPI channels.
We are not able to capture, but we identified the issue by enabling the debug tracer and parsing the error using TRM:
Testing CSI-C port:
kworker/0:3-2533  ...1 278.013786: rtcpu_vinotify_handle_msg: tstamp:8798033531 tag:CSIMUX_STREAM channel:0xff frame:0 vi_tstamp:208098464 data:0x00000100
The error is notified in bit 8 (data:0x00000100):
NOTIFICATION   is SPURIOUS_DATA_STREAM_2
Testing CSI-D port:
kworker/3:3-268  ...1 217.967100: rtcpu_vinotify_handle_msg: tstamp:6937644691 tag:CSIMUX_STREAM channel:0xff frame:0 vi_tstamp:2642676924 data:0x00001000
The error is notified in bit 12 (data:0x00001000):
NOTIFICATION   is SPURIOUS_DATA_STREAM_3
Based on the this, we are getting SPURIOUS_DATA_STREAM errors in the respective CSI channels.
TRM give the following description of this error:
“STREAM_SPURIOUS, which reports that the next packet after a frame end was not a frame start.”
We have checked that MIPI signals from the FPGA reach the TX2 using an oscilloscope. However, it seems that the signal that comes from the FPGA is received by the TX2, but it’s not detected correctly.
We are using a simple driver that just creates the video devices and we confirmed that it works using a different sensor.
- Do you know what could be causing this issue?
- How the MIPI signals could be affected?
- Is there a device-tree related configuration that we could check?
Thanks in advance,