Virtual Channels in Xavier NX


I’m using a deserializer FPDLINK3 (DS90UB954) for acquiring from 2 cameras. I’m able to capture correctly the camera 0 with 4 lanes from the deserializer. When I switch to the other (same sensor) I found that the deserializer uses VC=1 instead of VC=0. In this way acquiring from the Jetson Xavier raises an error

  1. When acquiring from camera 0
rtcpu_vinotify_event: tstamp:39139627793 tag:FS channel:0x00 frame:2 vi_tstamp:39139234139 data:0x00000010
  1. When acquiring from camera 1
rtcpu_vinotify_error: tstamp:56127330862 tag:CHANSEL_NOMATCH channel:0x41 frame:4 vi_tstamp:56127328495 data:0x00000589
rtcpu_vinotify_event: tstamp:56127751563 tag:FS channel:0x01 frame:4 vi_tstamp:56127327205 data:0x00000010

How to force for acquiring from the sensor?

hello f.ortolano,

may I know what’s the actual connections? did you connect two 4-lane camera to share same CSI brick?
please refer to Jetson Virtual Channel with GMSL Camera Framework, you may see-also [Device Tree Programming] session to review your device tree configurations.

my connection consists in 2 cameras connected on a deserializer. Deserializer is configured externally by command line i2c tools. What I want to do is acquire first from a camere and after from the other. To do this I set externally the deserializer in right way. As bt what I verified by the logs attached before, the frames arrrives rightly at Jetson but I think they are dropped becouse the ID changes from 0 to 1.

I read the reference. As I understand, the system checks the ‘vc-id’ tag inside the vi component. I tried to change this value to 1 and acquire from the camera but alredy see the same.


ok I found. In the guide you refer to, in the configuration examples of the device tree (page 28), it misses the vc-id also in nvcsi endpoints. Also, add the same in port endpoint of the device sensor. At the end, for acquiring with an ID different than 0, place vc-id everywhere in the chain where you find port-index and bus-width.

hello f.ortolano,

that’s correct. assume you’ve two 4-lane camera connected to and sharing the same CSI brick, you should have same port-index and bus-width settings for both of them, but using vc-id to distinguish difference cameras.

there’re vc-id for destination ID assigned to sensor, and vc_id property in sensor mode, they should be within the same settings. you must set the vc-id property in the gmsl-link node for each sensor to match the vc_id property in the sensor mode device node.

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