GMSL evaluation on Jetson Orin Nano: multiple bring-up issues

Hello,

I am evaluating the AD-GMSLCAMRPI-ADP reference using a Jetson Orin Nano. to read from the IMX219 on a Raspberry Pi camera.

I am using the SD card image provided on the GMSL GitHub repository by ADI, and I am using the provided user guide to setup the hardware. Note that I am using the MAX96724F rather than the MAX96724.

My Jetson Orin Nano is running on JetPack 5.1.1. The OS I am using is Ubuntu 20.04.5, and the kernel I am using is 5.10.104-tegra.

My Jetson Orin Nano is able to boot, but when I run run_demo.sh, I get the following errors:
analog@ubuntu:~/CSI-Camera$ ./run_demo.sh

Unable to setup formats: Invalid argument (22)

Unable to setup formats: Invalid argument (22)

Unable to setup formats: Invalid argument (22)

analog@ubuntu:~/CSI-Camera$ nvarguscamerasrc sensor-id=2 ! video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1 ! nvvidconv flip-method=0 ! video/x-raw, width=(int)960, height=(int)540, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink

nvarguscamerasrc sensor-id=3 ! video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1 ! nvvidconv flip-method=0 ! video/x-raw, width=(int)960, height=(int)540, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink

nvarguscamerasrc sensor-id=0 ! video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1 ! nvvidconv flip-method=0 ! video/x-raw, width=(int)960, height=(int)540, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink

nvarguscamerasrc sensor-id=1 ! video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, framerate=(fraction)30/1 ! nvvidconv flip-method=0 ! video/x-raw, width=(int)960, height=(int)540, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink

Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:762 Failed to create CaptureSession

[ WARN:0] global /home/ubuntu/build_opencv/opencv/modules/videoio/src/cap_gstreamer.cpp (1100) open OpenCV | GStreamer warning: Cannot query video position: status=0, value=-1, duration=-1

Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:754 Invalid camera device specified 2 specified, 0 max index

[ WARN:0] global /home/ubuntu/build_opencv/opencv/modules/videoio/src/cap_gstreamer.cpp (1100) open OpenCV | GStreamer warning: Cannot query video position: status=0, value=-1, duration=-1

Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:754 Invalid camera device specified 1 specified, 0 max index

[ WARN:0] global /home/ubuntu/build_opencv/opencv/modules/videoio/src/cap_gstreamer.cpp (1100) open OpenCV | GStreamer warning: Cannot query video position: status=0, value=-1, duration=-1

Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:754 Invalid camera device specified 3 specified, 0 max index

[ WARN:0] global /home/ubuntu/build_opencv/opencv/modules/videoio/src/cap_gstreamer.cpp (1100) open OpenCV | GStreamer warning: Cannot query video position: status=0, value=-1, duration=-1

Gtk-Message: 21:41:20.670: Failed to load module "canberra-gtk-module"

Gtk-Message: 21:41:20.670: Failed to load module "canberra-gtk-module"

Gtk-Message: 21:41:20.670: Failed to load module "canberra-gtk-module"

Gtk-Message: 21:41:20.671: Failed to load module "canberra-gtk-module"

Traceback (most recent call last):

  File "/home/analog/CSI-Camera/simple_camera.py", line 82, in <module>

Traceback (most recent call last):

show_camera(camera)

  File "/home/analog/CSI-Camera/simple_camera.py", line 82, in <module>

  File "/home/analog/CSI-Camera/simple_camera.py", line 62, in show_camera

    cv2.imshow(window_title, frame)

show_camera(camera)

cv2  File "/home/analog/CSI-Camera/simple_camera.py", line 62, in show_camera

.error: OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/array.cpp:2494: error: (-206:Bad flag (parameter or structure field)) Unrecognized or unsupported array type in function 'cvGetMat'

 
cv2.imshow(window_title, frame)

cv2.error: OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/array.cpp:2494: error: (-206:Bad flag (parameter or structure field)) Unrecognized or unsupported array type in function 'cvGetMat'

 
Traceback (most recent call last):

Traceback (most recent call last):

  File "/home/analog/CSI-Camera/simple_camera.py", line 82, in <module>

  File "/home/analog/CSI-Camera/simple_camera.py", line 82, in <module>

    show_camera(camera)

show_camera(camera)

  File "/home/analog/CSI-Camera/simple_camera.py", line 62, in show_camera

  File "/home/analog/CSI-Camera/simple_camera.py", line 62, in show_camera

cv2.imshow(window_title, frame)

cv2.imshow(window_title, frame)

cv2cv2..errorerror: : OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/array.cpp:2494: error: (-206:Bad flag (parameter or structure field)) Unrecognized or unsupported array type in function 'cvGetMat'

OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/array.cpp:2494: error: (-206:Bad flag (parameter or structure field)) Unrecognized or unsupported array type in function 'cvGetMat'


The following are the kernel messages from the buffer returned by dmesg:

analog@ubuntu:~/CSI-Camera$ sudo dmesg | grep imx
[   25.657713] imx219 11-0010: i2c bus regbase unavailable
[   25.692831] imx219 11-0010: bus clock frequency unavailable
[   25.700327] imx219 11-0010: tegracam sensor driver:imx219_v2.0.6
analog@ubuntu:~/CSI-Camera$ sudo dmesg | grep max96717
[    8.143827] max96717 10-0040: read 0 0x0 = 0x82
[    8.149536] max96717 10-0040: read 0 0x2c4 = 0x91
[    8.154975] max96717 10-0040: update 0 0x2c5 0x20 = 0x20
[    8.161494] max96717 10-0040: update 0 0x2c4 0x10 = 0x00
[    8.167991] max96717 10-0040: update 0 0x2c4 0x01 = 0x00
[    8.174042] max96717 10-0040: update 0 0x2c4 0x04 = 0x00
[    8.192300] max96717 10-0040: read 0 0x2be = 0x91
[    8.197742] max96717 10-0040: read 0 0x2c1 = 0x81
[    8.203184] max96717 10-0040: read 0 0x2c4 = 0x80
[    8.208624] max96717 10-0040: read 0 0x2c7 = 0x89
[    8.214063] max96717 10-0040: read 0 0x2ca = 0x91
[    8.219140] max96717 10-0040: read 0 0x2cd = 0x81
[    8.224183] max96717 10-0040: read 0 0x2d0 = 0x91
[    8.229225] max96717 10-0040: read 0 0x2d3 = 0x83
[    8.234267] max96717 10-0040: read 0 0x2d6 = 0x9c
[    8.239309] max96717 10-0040: read 0 0x2d9 = 0x89
[    8.244351] max96717 10-0040: read 0 0x2dc = 0x91
[    8.249665] gpiochip2: registered GPIOs 305 to 315 on max96717-gpiochip
[    8.257124] max96717 10-0040: update 0 0x302 0x70 = 0x10
[    8.262793] max96717 10-0040: update 0 0x383 0x80 = 0x00
[    8.268625] max96717 10-0040: update 0 0x315 0x80 = 0x80
[    8.274454] max96717 10-0040: update 0 0x308 0x30 = 0x00
[    8.280283] max96717 10-0040: update 0 0x308 0x0f = 0x00
[    8.285911] max96717 10-0040: write 0 0x311 = 0x00
[    8.291048] max96717 10-0040: update 0 0x330 0x07 = 0x00
[    8.296880] max96717 10-0040: update 0 0x331 0x30 = 0x10
[    8.302548] max96717 10-0040: update 0 0x332 0xf0 = 0xe0
[    8.308217] max96717 10-0040: update 0 0x333 0x0f = 0x04
[    8.313886] max96717 10-0040: update 0 0x335 0x07 = 0x00
[    8.319554] max96717 10-0040: update 0 0x334 0x70 = 0x00
[    8.325383] max96717 10-0040: update 0 0x330 0x40 = 0x40
[    8.331214] max96717 10-0040: update 0 0x308 0x20 = 0x20
[    8.337048] max96717 10-0040: update 0 0x308 0x04 = 0x04
[    8.350960] max96717 10-0040: update 0 0x311 0x40 = 0x40
[    8.362792] max96717 10-0040: update 0 0x312 0x04 = 0x04
[    8.382419] max96717 10-0040: update 0 0x313 0x04 = 0x00
[    8.388085] max96717 10-0040: update 0 0x313 0x40 = 0x00
[    8.393915] max96717 10-0040: update 0 0x31e 0x20 = 0x20
[    8.399747] max96717 10-0040: update 0 0x31e 0x1f = 0x0a
[    8.405580] max96717 10-0040: update 0 0x200 0x08 = 0x08
[    8.411413] max96717 10-0040: update 0 0x201 0x3f = 0x10
[    8.417037] max96717 10-0040: write 0 0x5b = 0x00
[    8.422242] max96717 10-0040: update 0 0x2 0x40 = 0x00
[    8.427687] max96717 10-0040: write 0 0x30d = 0x01
[    8.432779] max96717 10-0040: write 0 0x30e = 0x00
[    8.438078] max96717 10-0040: update 0 0x318 0x3f = 0x12
[    8.443911] max96717 10-0040: update 0 0x318 0x40 = 0x40
[    8.449577] max96717 10-0040: update 0 0x319 0x40 = 0x00
[    8.455245] max96717 10-0040: update 0 0x3dc 0x40 = 0x00
[    8.460911] max96717 10-0040: update 0 0x3dd 0x40 = 0x00
[    8.573693] max96717 10-0040: write 0 0x42 = 0x6e
[    8.579116] max96717 10-0040: write 0 0x43 = 0x20
[    8.584543] max96717 10-0040: write 0 0x44 = 0x00
[    8.589970] max96717 10-0040: write 0 0x45 = 0x00
[    8.594990] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96717:0 10-0040 bound
[    9.847707] max96717 12-0040: read -121 0x0 = 0xffff3bca
[    9.853171] max96717 12-0040: read 0x0000 failed
[    9.964678] max96717 12-0040: Retry 0 waiting for serializer: -121
[    9.973105] max96717 12-0040: read -121 0x0 = 0x00
[    9.978047] max96717 12-0040: read 0x0000 failed
[   10.088683] max96717 12-0040: Retry 1 waiting for serializer: -121
[   10.096740] max96717 12-0040: read -121 0x0 = 0x00
[   10.101673] max96717 12-0040: read 0x0000 failed
[   10.212680] max96717 12-0040: Retry 2 waiting for serializer: -121
[   10.220309] max96717 12-0040: read -121 0x0 = 0x00
[   10.225242] max96717 12-0040: read 0x0000 failed
[   10.336958] max96717 12-0040: Retry 3 waiting for serializer: -121
[   10.344536] max96717 12-0040: read -121 0x0 = 0x00
[   10.349468] max96717 12-0040: read 0x0000 failed
[   10.460947] max96717 12-0040: Retry 4 waiting for serializer: -121
[   10.469047] max96717 12-0040: read -121 0x0 = 0x00
[   10.473993] max96717 12-0040: read 0x0000 failed
[   10.584681] max96717 12-0040: Retry 5 waiting for serializer: -121
[   10.592759] max96717 12-0040: read -121 0x0 = 0x00
[   10.597694] max96717 12-0040: read 0x0000 failed
[   10.708701] max96717 12-0040: Retry 6 waiting for serializer: -121
[   10.716730] max96717 12-0040: read -121 0x0 = 0x00
[   10.721661] max96717 12-0040: read 0x0000 failed
[   10.832686] max96717 12-0040: Retry 7 waiting for serializer: -121
[   10.840282] max96717 12-0040: read -121 0x0 = 0x00
[   10.845212] max96717 12-0040: read 0x0000 failed
[   10.956947] max96717 12-0040: Retry 8 waiting for serializer: -121
[   10.964543] max96717 12-0040: read -121 0x0 = 0x00
[   10.969476] max96717 12-0040: read 0x0000 failed
[   11.080956] max96717 12-0040: Retry 9 waiting for serializer: -121
[   11.087355] max96717: probe of 12-0040 failed with error -121
[   12.332289] max96717 13-0040: read -121 0x0 = 0xffff3bca
[   12.337756] max96717 13-0040: read 0x0000 failed
[   12.448678] max96717 13-0040: Retry 0 waiting for serializer: -121
[   12.457095] max96717 13-0040: read -121 0x0 = 0x00
[   12.462033] max96717 13-0040: read 0x0000 failed
[   12.572688] max96717 13-0040: Retry 1 waiting for serializer: -121
[   12.580700] max96717 13-0040: read -121 0x0 = 0x00
[   12.585630] max96717 13-0040: read 0x0000 failed
[   12.696671] max96717 13-0040: Retry 2 waiting for serializer: -121
[   12.703742] max96717 13-0040: read -121 0x0 = 0x00
[   12.708672] max96717 13-0040: read 0x0000 failed
[   12.820682] max96717 13-0040: Retry 3 waiting for serializer: -121
[   12.828294] max96717 13-0040: read -121 0x0 = 0x00
[   12.833228] max96717 13-0040: read 0x0000 failed
[   12.944952] max96717 13-0040: Retry 4 waiting for serializer: -121
[   12.954206] max96717 13-0040: read -121 0x0 = 0x00
[   12.959152] max96717 13-0040: read 0x0000 failed
[   13.068685] max96717 13-0040: Retry 5 waiting for serializer: -121
[   13.077139] max96717 13-0040: read -121 0x0 = 0x00
[   13.082077] max96717 13-0040: read 0x0000 failed
[   13.192684] max96717 13-0040: Retry 6 waiting for serializer: -121
[   13.200742] max96717 13-0040: read -121 0x0 = 0x00
[   13.205674] max96717 13-0040: read 0x0000 failed
[   13.316667] max96717 13-0040: Retry 7 waiting for serializer: -121
[   13.323672] max96717 13-0040: read -121 0x0 = 0x00
[   13.328600] max96717 13-0040: read 0x0000 failed
[   13.440681] max96717 13-0040: Retry 8 waiting for serializer: -121
[   13.448855] max96717 13-0040: read -121 0x0 = 0x00
[   13.453788] max96717 13-0040: read 0x0000 failed
[   13.564951] max96717 13-0040: Retry 9 waiting for serializer: -121
[   13.571356] max96717: probe of 13-0040 failed with error -121
[   14.820276] max96717 14-0040: read -121 0x0 = 0xffff3bca
[   14.825744] max96717 14-0040: read 0x0000 failed
[   14.936678] max96717 14-0040: Retry 0 waiting for serializer: -121
[   14.945117] max96717 14-0040: read -121 0x0 = 0x00
[   14.950055] max96717 14-0040: read 0x0000 failed
[   15.060688] max96717 14-0040: Retry 1 waiting for serializer: -121
[   15.068688] max96717 14-0040: read -121 0x0 = 0x00
[   15.073623] max96717 14-0040: read 0x0000 failed
[   15.184685] max96717 14-0040: Retry 2 waiting for serializer: -121
[   15.192330] max96717 14-0040: read -121 0x0 = 0x00
[   15.197263] max96717 14-0040: read 0x0000 failed
[   15.308946] max96717 14-0040: Retry 3 waiting for serializer: -121
[   15.316572] max96717 14-0040: read -121 0x0 = 0x00
[   15.321506] max96717 14-0040: read 0x0000 failed
[   15.432950] max96717 14-0040: Retry 4 waiting for serializer: -121
[   15.442211] max96717 14-0040: read -121 0x0 = 0x00
[   15.447156] max96717 14-0040: read 0x0000 failed
[   15.556683] max96717 14-0040: Retry 5 waiting for serializer: -121
[   15.564199] max96717 14-0040: read -121 0x0 = 0x00
[   15.569140] max96717 14-0040: read 0x0000 failed
[   15.680684] max96717 14-0040: Retry 6 waiting for serializer: -121
[   15.688727] max96717 14-0040: read -121 0x0 = 0x00
[   15.693659] max96717 14-0040: read 0x0000 failed
[   15.804687] max96717 14-0040: Retry 7 waiting for serializer: -121
[   15.812282] max96717 14-0040: read -121 0x0 = 0x00
[   15.817212] max96717 14-0040: read 0x0000 failed
[   15.928943] max96717 14-0040: Retry 8 waiting for serializer: -121
[   15.936534] max96717 14-0040: read -121 0x0 = 0x00
[   15.941468] max96717 14-0040: read 0x0000 failed
[   16.052953] max96717 14-0040: Retry 9 waiting for serializer: -121
[   16.059363] max96717: probe of 14-0040 failed with error -121
[   25.650646] max96717 10-0040: read 0 0x2c4 = 0x80
[   25.702798] max96717 10-0040: update 0 0x2c4 0x10 = 0x10
[   25.710945] max96717 10-0040: update 0 0x2c4 0x01 = 0x00
[   25.719265] max96717 10-0040: update 0 0x2c4 0x04 = 0x00
[   25.744734] max96717 10-0040: update 0 0x2c4 0x10 = 0x00
[   25.754692] max96717 10-0040: update 0 0x2c4 0x01 = 0x00
[   25.782608] max96717 10-0040: update 0 0x2c4 0x04 = 0x00
[  129.736403] max96717 10-0040: update 0 0x318 0x3f = 0x2b
[  129.742173] max96717 10-0040: update 0 0x318 0x40 = 0x40
[  129.748145] max96717 10-0040: update 0 0x319 0x3f = 0x12
[  129.754076] max96717 10-0040: update 0 0x319 0x40 = 0x40
[  129.759911] max96717 10-0040: update 0 0x3dc 0x40 = 0x00
[  129.765638] max96717 10-0040: update 0 0x3dd 0x40 = 0x00
[  133.908067] max96717 10-0040: update 0 0x2c4 0x10 = 0x10
[  133.913862] max96717 10-0040: update 0 0x2c4 0x01 = 0x00
[  133.919657] max96717 10-0040: update 0 0x2c4 0x04 = 0x00
[  133.964134] max96717 10-0040: update 0 0x2 0x40 = 0x40
analog@ubuntu:~/CSI-Camera$ sudo dmesg | grep max96724
[    7.538800] max96724 9-0027: read 0 0x0 = 0x4e
[    7.543787] max96724 9-0027: update 0 0x13 0x40 = 0x40
[    7.568838] max96724 9-0027: read 0 0x0 = 0x4e
[    7.574411] max96724 9-0027: update 0 0x8a2 0xf0 = 0x00
[    7.580082] max96724 9-0027: update 0 0xf4 0x10 = 0x00
[    7.585738] max96724 9-0027: update 0 0xf4 0x0f = 0x00
[    7.591229] max96724 9-0027: update 0 0x8a0 0x1f = 0x04
[    7.596971] max96724 9-0027: update 0 0x94a 0xc0 = 0x40
[    7.602546] max96724 9-0027: update 0 0x8a3 0xff = 0xe4
[    7.608121] max96724 9-0027: update 0 0x8a5 0x3f = 0x00
[    7.613652] max96724 9-0027: write 0 0x943 = 0x81
[    7.618653] max96724 9-0027: write 0 0x944 = 0x81
[    7.623867] max96724 9-0027: update 0 0x1d00 0x01 = 0x00
[    7.629699] max96724 9-0027: update 0 0x418 0x1f = 0x19
[    7.635281] max96724 9-0027: update 0 0x418 0x20 = 0x20
[    7.640856] max96724 9-0027: update 0 0x1d00 0x01 = 0x01
[    7.646525] max96724 9-0027: update 0 0x973 0x07 = 0x10
[    7.652271] max96724 9-0027: update 0 0x8a2 0x30 = 0x30
[    7.657846] max96724 9-0027: update 0 0x8ca 0x03 = 0x00
[    7.663580] max96724 9-0027: update 0 0x939 0x30 = 0x00
[    7.669317] max96724 9-0027: update 0 0xf4 0x01 = 0x01
[    7.674966] max96724 9-0027: update 0 0xf0 0x03 = 0x00
[    7.680451] max96724 9-0027: update 0 0xf0 0x0c = 0x00
[    7.685944] max96724 9-0027: update 0 0x414 0x10 = 0x00
[    7.691517] max96724 9-0027: update 0 0x417 0x10 = 0x00
[    7.697090] max96724 9-0027: update 0 0x41f 0x30 = 0x00
[    7.702665] max96724 9-0027: update 0 0x41f 0x01 = 0x00
[    7.708200] max96724 9-0027: write 0 0x90d = 0x12
[    7.713201] max96724 9-0027: write 0 0x90e = 0x12
[    7.725150] max96724 9-0027: update 0 0x92d 0x03 = 0x01
[    7.730887] max96724 9-0027: update 0 0x90b 0x01 = 0x01
[    7.736460] max96724 9-0027: update 0 0x8ca 0x0c = 0x04
[    7.742036] max96724 9-0027: update 0 0x979 0x30 = 0x10
[    7.747767] max96724 9-0027: update 0 0xf4 0x02 = 0x02
[    7.753415] max96724 9-0027: update 0 0xf0 0x30 = 0x10
[    7.758903] max96724 9-0027: update 0 0xf0 0xc0 = 0x40
[    7.764389] max96724 9-0027: update 0 0x414 0x20 = 0x00
[    7.769966] max96724 9-0027: update 0 0x417 0x20 = 0x00
[    7.775542] max96724 9-0027: update 0 0x41f 0xc0 = 0x00
[    7.781115] max96724 9-0027: update 0 0x41f 0x02 = 0x00
[    7.786646] max96724 9-0027: write 0 0x94d = 0x12
[    7.791642] max96724 9-0027: write 0 0x94e = 0x52
[    7.796841] max96724 9-0027: update 0 0x96d 0x03 = 0x01
[    7.802576] max96724 9-0027: update 0 0x94b 0x01 = 0x01
[    7.808150] max96724 9-0027: update 0 0x8ca 0x30 = 0x20
[    7.813888] max96724 9-0027: update 0 0x9b9 0x30 = 0x20
[    7.819631] max96724 9-0027: update 0 0xf4 0x04 = 0x04
[    7.825124] max96724 9-0027: update 0 0xf1 0x03 = 0x02
[    7.830614] max96724 9-0027: update 0 0xf1 0x0c = 0x08
[    7.836103] max96724 9-0027: update 0 0x414 0x40 = 0x00
[    7.841676] max96724 9-0027: update 0 0x417 0x40 = 0x00
[    7.847250] max96724 9-0027: update 0 0x41e 0xc0 = 0x00
[    7.852826] max96724 9-0027: update 0 0x41f 0x04 = 0x00
[    7.858356] max96724 9-0027: write 0 0x98d = 0x12
[    7.863354] max96724 9-0027: write 0 0x98e = 0x92
[    7.868556] max96724 9-0027: update 0 0x9ad 0x03 = 0x01
[    7.874294] max96724 9-0027: update 0 0x98b 0x01 = 0x01
[    7.879871] max96724 9-0027: update 0 0x8ca 0xc0 = 0xc0
[    7.885618] max96724 9-0027: update 0 0x9f9 0x30 = 0x30
[    7.891357] max96724 9-0027: update 0 0xf4 0x08 = 0x08
[    7.897009] max96724 9-0027: update 0 0xf1 0x30 = 0x30
[    7.910589] max96724 9-0027: update 0 0xf1 0xc0 = 0xc0
[    7.923225] max96724 9-0027: update 0 0x414 0x80 = 0x00
[    7.932198] max96724 9-0027: update 0 0x417 0x80 = 0x00
[    7.941427] max96724 9-0027: update 0 0x41d 0x30 = 0x00
[    7.956294] max96724 9-0027: update 0 0x41f 0x08 = 0x00
[    7.961834] max96724 9-0027: write 0 0x9cd = 0x12
[    7.966831] max96724 9-0027: write 0 0x9ce = 0xd2
[    7.972036] max96724 9-0027: update 0 0x9ed 0x03 = 0x01
[    7.977774] max96724 9-0027: update 0 0x9cb 0x01 = 0x01
[    7.984303] max96724 9-0027: update 0 0x6 0x0f = 0x01
[    8.604150] max96724 9-0027: update 0 0x6 0x0f = 0x02
[    9.830959] max96724 9-0027: Failed waiting for serializer with new or old address: -121
[    9.839355] max96724 9-0027: Failed to attach remote client '12-0040': -121
[   11.094379] max96724 9-0027: update 0 0x6 0x0f = 0x04
[   12.314960] max96724 9-0027: Failed waiting for serializer with new or old address: -121
[   12.323346] max96724 9-0027: Failed to attach remote client '13-0040': -121
[   13.579330] max96724 9-0027: update 0 0x6 0x0f = 0x08
[   14.802966] max96724 9-0027: Failed waiting for serializer with new or old address: -121
[   14.811359] max96724 9-0027: Failed to attach remote client '14-0040': -121
[   16.066738] max96724 9-0027: update 0 0x6 0x0f = 0x0f
[   16.136700] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96724:0 9-0027 bound
[   16.144679] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96724:1 9-0027 bound
[   16.152648] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96724:2 9-0027 bound
[   16.160620] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96724:3 9-0027 bound
[  129.784571] max96724 9-0027: write 0 0x90d = 0x2b
[  129.789636] max96724 9-0027: write 0 0x90e = 0x2b
[  129.794783] max96724 9-0027: update 0 0x92d 0x03 = 0x01
[  129.800446] max96724 9-0027: update 0 0x90b 0x01 = 0x01
[  129.806037] max96724 9-0027: write 0 0x90f = 0x00
[  129.811170] max96724 9-0027: write 0 0x910 = 0x00
[  129.816507] max96724 9-0027: update 0 0x92d 0x0c = 0x04
[  129.822370] max96724 9-0027: update 0 0x90b 0x02 = 0x02
[  129.827963] max96724 9-0027: write 0 0x911 = 0x01
[  129.833020] max96724 9-0027: write 0 0x912 = 0x01
[  129.838339] max96724 9-0027: update 0 0x92d 0x30 = 0x10
[  129.844613] max96724 9-0027: update 0 0x90b 0x04 = 0x04
[  129.850218] max96724 9-0027: write 0 0x913 = 0x12
[  129.855279] max96724 9-0027: write 0 0x914 = 0x12
[  129.860595] max96724 9-0027: update 0 0x92d 0xc0 = 0x40
[  129.866452] max96724 9-0027: update 0 0x90b 0x08 = 0x08
[  129.875299] max96724 9-0027: write 0 0x94d = 0x2b
[  129.880368] max96724 9-0027: write 0 0x94e = 0x6b
[  129.885484] max96724 9-0027: update 0 0x96d 0x03 = 0x01
[  129.891123] max96724 9-0027: update 0 0x94b 0x01 = 0x01
[  129.896785] max96724 9-0027: write 0 0x94f = 0x00
[  129.901830] max96724 9-0027: write 0 0x950 = 0x40
[  129.907121] max96724 9-0027: update 0 0x96d 0x0c = 0x04
[  129.912948] max96724 9-0027: update 0 0x94b 0x02 = 0x02
[  129.918522] max96724 9-0027: write 0 0x951 = 0x01
[  129.923559] max96724 9-0027: write 0 0x952 = 0x41
[  129.928849] max96724 9-0027: update 0 0x96d 0x30 = 0x10
[  129.934673] max96724 9-0027: update 0 0x94b 0x04 = 0x04
[  129.940251] max96724 9-0027: write 0 0x953 = 0x12
[  129.945296] max96724 9-0027: write 0 0x954 = 0x52
[  129.950587] max96724 9-0027: update 0 0x96d 0xc0 = 0x40
[  129.956410] max96724 9-0027: update 0 0x94b 0x08 = 0x08
[  129.965944] max96724 9-0027: write 0 0x98d = 0x2b
[  129.971012] max96724 9-0027: write 0 0x98e = 0xab
[  129.976148] max96724 9-0027: update 0 0x9ad 0x03 = 0x01
[  129.981810] max96724 9-0027: update 0 0x98b 0x01 = 0x01
[  129.987423] max96724 9-0027: write 0 0x98f = 0x00
[  129.992474] max96724 9-0027: write 0 0x990 = 0x80
[  129.997838] max96724 9-0027: update 0 0x9ad 0x0c = 0x04
[  130.003689] max96724 9-0027: update 0 0x98b 0x02 = 0x02
[  130.009275] max96724 9-0027: write 0 0x991 = 0x01
[  130.014325] max96724 9-0027: write 0 0x992 = 0x81
[  130.019641] max96724 9-0027: update 0 0x9ad 0x30 = 0x10
[  130.025489] max96724 9-0027: update 0 0x98b 0x04 = 0x04
[  130.031081] max96724 9-0027: write 0 0x993 = 0x12
[  130.036132] max96724 9-0027: write 0 0x994 = 0x92
[  130.041449] max96724 9-0027: update 0 0x9ad 0xc0 = 0x40
[  130.047298] max96724 9-0027: update 0 0x98b 0x08 = 0x08
[  130.055934] max96724 9-0027: write 0 0x9cd = 0x2b
[  130.060992] max96724 9-0027: write 0 0x9ce = 0xeb
[  130.066127] max96724 9-0027: update 0 0x9ed 0x03 = 0x01
[  130.071894] max96724 9-0027: update 0 0x9cb 0x01 = 0x01
[  130.077468] max96724 9-0027: write 0 0x9cf = 0x00
[  130.082521] max96724 9-0027: write 0 0x9d0 = 0xc0
[  130.087839] max96724 9-0027: update 0 0x9ed 0x0c = 0x04
[  130.093673] max96724 9-0027: update 0 0x9cb 0x02 = 0x02
[  130.099257] max96724 9-0027: write 0 0x9d1 = 0x01
[  130.104301] max96724 9-0027: write 0 0x9d2 = 0xc1
[  130.109619] max96724 9-0027: update 0 0x9ed 0x30 = 0x10
[  130.115468] max96724 9-0027: update 0 0x9cb 0x04 = 0x04
[  130.121052] max96724 9-0027: write 0 0x9d3 = 0x12
[  130.126111] max96724 9-0027: write 0 0x9d4 = 0xd2
[  130.131421] max96724 9-0027: update 0 0x9ed 0xc0 = 0x40
[  130.137271] max96724 9-0027: update 0 0x9cb 0x08 = 0x08
[  133.948765] max96724 9-0027: update 0 0x40b 0x02 = 0x02
[  133.958248] max96724 9-0027: update 0 0x8a0 0x80 = 0x80
analog@ubuntu:~/CSI-Camera$
 

While it seems like I2C communication works with the MAX96717 and MAX96724, I am getting errors regarding the IMX219.

Note also that while the LOCK LED is on on the MAX96717 board, it does not turn on on the MAX96724F board.

I was wondering what next steps I should take when debugging. Does the provided kernel image on the GitHub page work with MAX96724F out of the box, or do I need to modify the kernel source or device tree? I understand that for the raspberry pi, you need to use the gmsl_generate_dts tool to create an overlay to allow communication with the MAX96724F. Is that the same case with the Jetson Orin Nano?

Thanks for your time and assistance. I look forward to your response.

Looks like the device tree only define one IMX219?

analog@ubuntu:~/CSI-Camera$ sudo dmesg | grep imx
[ 25.657713] imx219 11-0010: i2c bus regbase unavailable
[ 25.692831] imx219 11-0010: bus clock frequency unavailable
[ 25.700327] imx219 11-0010: tegracam sensor driver:imx219_v2.0.6

What’s the this command shows v4l2-ctl --list-devices

@ShaneCCC

Hello Shane,

I switched the overlay I was using to one of the other options on the Jetson. The result was the LOCK LED on the MAX96724F board turning on. As the commands below show, the /dev/video0 device node is set, but the script still fails and the IMX219 does not appear in the media device node /dev/media0. Additionally, when I run the script and open the V4l2 utility, the screen is all black, regardless of which video format I choose in the UI. Note that when I switch my video format in the UI, I use v4l2-ctl to ensure my hardware uses that format too:

analog@ubuntu:~/CSI-Camera$ sudo i2cdetect -r -y 10

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

00:          -- -- -- -- -- -- -- -- -- -- -- -- --

10: 10 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

20: -- -- -- -- -- -- -- 27 28 -- -- -- -- -- -- --

30: -- -- -- -- -- -- -- 37 -- -- -- -- -- -- -- --

40: UU 41 -- -- -- -- -- -- -- -- -- -- -- -- -- --

50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

60: -- -- -- -- 64 -- -- -- -- -- -- -- -- -- -- --

70: -- -- -- -- -- -- -- --

analog@ubuntu:~/CSI-Camera$ sudo media-ctl -d /dev/media0 -p

Media controller API version 5.10.104

 

Media device information

------------------------

driver          tegra-camrtc-ca

model           NVIDIA Tegra Video Input Device

serial

bus info

hw revision     0x3

driver version  5.10.104

 

Device topology

- entity 1: nvcsi0 (2 pads, 2 links)

            type V4L2 subdev subtype Unknown flags 0

            device node name /dev/v4l-subdev0

        pad0: Sink

                <- "max96724:0 9-0027":0 [ENABLED]

        pad1: Source

                -> "vi-output, cam_0":0 [ENABLED]

 

- entity 4: max96717:0 10-0040 (2 pads, 2 links)

            type V4L2 subdev subtype Unknown flags 0

            device node name /dev/v4l-subdev1

        pad0: Source

                [fmt:FIXED/0x0]

                -> "max96724:0 9-0027":1 [ENABLED]

        pad1: Sink

                [fmt:SRGGB10_1X10/0x0]

                <- "cam_0":0 [ENABLED]

 

- entity 7: max96724:0 9-0027 (2 pads, 2 links)

            type V4L2 subdev subtype Unknown flags 0

            device node name /dev/v4l-subdev2

        pad0: Source

                [fmt:SRGGB10_1X10/0x0]

                -> "nvcsi0":0 [ENABLED]

        pad1: Sink

                [fmt:FIXED/0x0]

                <- "max96717:0 10-0040":0 [ENABLED]

 

- entity 10: cam_0 (1 pad, 1 link)

             type V4L2 subdev subtype Sensor flags 0

             device node name /dev/v4l-subdev3

        pad0: Source

                [fmt:SRGGB10_1X10/1920x1080 field:none colorspace:srgb]

                -> "max96717:0 10-0040":1 [ENABLED]

 

- entity 12: vi-output, cam_0 (1 pad, 1 link)

             type Node subtype V4L flags 0

             device node name /dev/video0

        pad0: Sink

                <- "nvcsi0":1 [ENABLED]

 

analog@ubuntu:~/CSI-Camera$ v4l2-ctl --list-devices

NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):

        /dev/media0

 

vi-output, cam_0 (platform:tegra-capture-vi:1):

        /dev/video0

 

analog@ubuntu:~/CSI-Camera$

 

The following is the output from dmesg, showing there are errors regarding the imx219 device node:

analog@ubuntu:~/CSI-Camera$ sudo dmesg | grep -E "imx219|max96717|max96724"

[    8.556480] max96724 9-0027: read 0 0x0 = 0x4e

[    8.561529] max96724 9-0027: update 0 0x13 0x40 = 0x40

[    8.587438] max96724 9-0027: read 0 0x0 = 0x4e

[    8.593523] max96724 9-0027: update 0 0x8a2 0xf0 = 0x00

[    8.599948] max96724 9-0027: update 0 0xf4 0x10 = 0x00

[    8.606282] max96724 9-0027: update 0 0xf4 0x0f = 0x00

[    8.612171] max96724 9-0027: update 0 0x8a0 0x1f = 0x04

[    8.618599] max96724 9-0027: update 0 0x94a 0xc0 = 0x40

[    8.624575] max96724 9-0027: update 0 0x8a3 0xff = 0xe4

[    8.630548] max96724 9-0027: update 0 0x8a5 0x3f = 0x00

[    8.636513] max96724 9-0027: write 0 0x943 = 0x07

[    8.642051] max96724 9-0027: write 0 0x944 = 0x01

[    8.647323] max96724 9-0027: update 0 0x1d00 0x01 = 0x00

[    8.653029] max96724 9-0027: update 0 0x418 0x1f = 0x0f

[    8.658653] max96724 9-0027: update 0 0x418 0x20 = 0x20

[    8.664458] max96724 9-0027: update 0 0x1d00 0x01 = 0x01

[    8.670354] max96724 9-0027: update 0 0x973 0x07 = 0x04

[    8.676163] max96724 9-0027: update 0 0x8a2 0x30 = 0x30

[    8.681783] max96724 9-0027: update 0 0x8ca 0x03 = 0x00

[    8.687585] max96724 9-0027: update 0 0x939 0x30 = 0x00

[    8.693388] max96724 9-0027: update 0 0xf4 0x01 = 0x01

[    8.699100] max96724 9-0027: update 0 0xf0 0x03 = 0x00

[    8.704632] max96724 9-0027: update 0 0xf0 0x0c = 0x00

[    8.710160] max96724 9-0027: update 0 0x414 0x10 = 0x00

[    8.715778] max96724 9-0027: update 0 0x417 0x10 = 0x00

[    8.721397] max96724 9-0027: update 0 0x41f 0x30 = 0x00

[    8.727011] max96724 9-0027: update 0 0x41f 0x01 = 0x00

[    8.733529] max96724 9-0027: update 0 0x6 0x0f = 0x01

[    8.870170] max96717 10-0040: read 0 0x0 = 0x82

[    8.876066] max96717 10-0040: read 0 0x2c4 = 0x91

[    8.881506] max96717 10-0040: update 0 0x2c5 0x20 = 0x20

[    8.888033] max96717 10-0040: update 0 0x2c4 0x10 = 0x00

[    8.894535] max96717 10-0040: update 0 0x2c4 0x01 = 0x00

[    8.900760] max96717 10-0040: update 0 0x2c4 0x04 = 0x00

[    8.912336] max96717 10-0040: read 0 0x2be = 0x91

[    8.917386] max96717 10-0040: read 0 0x2c1 = 0x81

[    8.922431] max96717 10-0040: read 0 0x2c4 = 0x80

[    8.935696] max96717 10-0040: read 0 0x2c7 = 0x89

[    8.947911] max96717 10-0040: read 0 0x2ca = 0x91

[    8.957530] max96717 10-0040: read 0 0x2cd = 0x81

[    8.965588] max96717 10-0040: read 0 0x2d0 = 0x91

[    8.979384] max96717 10-0040: read 0 0x2d3 = 0x83

[    8.984436] max96717 10-0040: read 0 0x2d6 = 0x9c

[    8.989477] max96717 10-0040: read 0 0x2d9 = 0x89

[    8.994521] max96717 10-0040: read 0 0x2dc = 0x91

[    8.999814] gpiochip2: registered GPIOs 305 to 315 on max96717-gpiochip

[    9.007228] max96717 10-0040: update 0 0x302 0x70 = 0x10

[    9.012901] max96717 10-0040: update 0 0x383 0x80 = 0x00

[    9.018743] max96717 10-0040: update 0 0x315 0x80 = 0x80

[    9.024582] max96717 10-0040: update 0 0x308 0x30 = 0x00

[    9.030418] max96717 10-0040: update 0 0x308 0x0f = 0x00

[    9.043666] max96717 10-0040: write 0 0x311 = 0x00

[    9.048805] max96717 10-0040: update 0 0x330 0x07 = 0x00

[    9.054647] max96717 10-0040: update 0 0x331 0x30 = 0x10

[    9.060320] max96717 10-0040: update 0 0x332 0xf0 = 0xe0

[    9.065986] max96717 10-0040: update 0 0x333 0x0f = 0x04

[    9.071661] max96717 10-0040: update 0 0x335 0x07 = 0x00

[    9.077330] max96717 10-0040: update 0 0x334 0x70 = 0x00

[    9.103310] max96717 10-0040: update 0 0x330 0x40 = 0x40

[    9.113147] max96717 10-0040: update 0 0x308 0x20 = 0x20

[    9.118988] max96717 10-0040: update 0 0x308 0x04 = 0x04

[    9.128618] max96717 10-0040: update 0 0x311 0x40 = 0x40

[    9.138289] max96717 10-0040: update 0 0x312 0x04 = 0x00

[    9.143960] max96717 10-0040: update 0 0x313 0x04 = 0x00

[    9.149630] max96717 10-0040: update 0 0x313 0x40 = 0x00

[    9.155299] max96717 10-0040: update 0 0x31e 0x20 = 0x00

[    9.161130] max96717 10-0040: update 0 0x31e 0x1f = 0x00

[    9.166798] max96717 10-0040: update 0 0x200 0x08 = 0x00

[    9.172467] max96717 10-0040: update 0 0x201 0x3f = 0x00

[    9.178089] max96717 10-0040: write 0 0x5b = 0x00

[    9.183292] max96717 10-0040: update 0 0x2 0x40 = 0x00

[    9.188737] max96717 10-0040: write 0 0x30d = 0x01

[    9.193828] max96717 10-0040: write 0 0x30e = 0x00

[    9.198967] max96717 10-0040: update 0 0x318 0x40 = 0x00

[    9.211490] max96717 10-0040: update 0 0x319 0x40 = 0x00

[    9.217162] max96717 10-0040: update 0 0x3dc 0x40 = 0x00

[    9.222829] max96717 10-0040: update 0 0x3dd 0x40 = 0x00

[    9.336663] max96717 10-0040: write 0 0x42 = 0x6e

[    9.342091] max96717 10-0040: write 0 0x43 = 0x20

[    9.347527] max96717 10-0040: write 0 0x44 = 0x00

[    9.352556] max96717 10-0040: write 0 0x45 = 0x00

[    9.357783] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96717:0 10-0040 bound

[    9.374804] max96724 9-0027: update 0 0x6 0x0f = 0x01

[    9.450630] tegra-camrtc-capture-vi tegra-capture-vi: subdev max96724:0 9-0027 bound

[   18.420190] max96717 10-0040: read 0 0x2c4 = 0x80

[   18.426159] imx219 11-0010: i2c bus regbase unavailable

[   18.431737] imx219 11-0010: bus clock frequency unavailable

[   18.437695] imx219 11-0010: tegracam sensor driver:imx219_v2.0.6

[   18.441812] max96717 10-0040: update 0 0x2c4 0x10 = 0x10

[   18.451152] max96717 10-0040: update 0 0x2c4 0x01 = 0x00

[   18.467603] max96717 10-0040: update 0 0x2c4 0x04 = 0x00

[   18.506835] max96717 10-0040: update 0 0x2c4 0x10 = 0x00

[   18.528810] max96717 10-0040: update 0 0x2c4 0x01 = 0x00

[   18.540656] max96717 10-0040: update 0 0x2c4 0x04 = 0x00

[   70.684043] max96717 10-0040: update 0 0x318 0x3f = 0x2b

[   70.690001] max96717 10-0040: update 0 0x318 0x40 = 0x40

[   70.695744] max96717 10-0040: update 0 0x319 0x40 = 0x00

[   70.701482] max96717 10-0040: update 0 0x3dc 0x40 = 0x00

[   70.707306] max96717 10-0040: update 0 0x3dd 0x40 = 0x00

[   70.723883] max96724 9-0027: write 0 0x90d = 0x2b

[   70.728947] max96724 9-0027: write 0 0x90e = 0x2b

[   70.734266] max96724 9-0027: update 0 0x92d 0x03 = 0x01

[   70.740095] max96724 9-0027: update 0 0x90b 0x01 = 0x01

[   70.745675] max96724 9-0027: write 0 0x90f = 0x00

[   70.750799] max96724 9-0027: write 0 0x910 = 0x00

[   70.756081] max96724 9-0027: update 0 0x92d 0x0c = 0x04

[   70.761901] max96724 9-0027: update 0 0x90b 0x02 = 0x02

[   70.767471] max96724 9-0027: write 0 0x911 = 0x01

[   70.772507] max96724 9-0027: write 0 0x912 = 0x01

[   70.777794] max96724 9-0027: update 0 0x92d 0x30 = 0x10

[   70.783614] max96724 9-0027: update 0 0x90b 0x04 = 0x04

[   74.704561] max96717 10-0040: update 0 0x2c4 0x10 = 0x10

[   74.710416] max96717 10-0040: update 0 0x2c4 0x01 = 0x00

[   74.716236] max96717 10-0040: update 0 0x2c4 0x04 = 0x00

[   74.744553] max96724 9-0027: update 0 0x40b 0x02 = 0x02

[   74.753985] max96724 9-0027: update 0 0x8a0 0x80 = 0x80

[   74.759846] max96717 10-0040: update 0 0x2 0x40 = 0x40

I noticed that while the EN pin of the IMX219 is high and I2C communication works using i2cget and i2cdetect, PCLK is not enabled on the IMX219, and none of the CSI counters increment. This means that the IMX219 is not streaming data:

What steps should I take to further debug this?

Thanks for your time.

Suppose the max96724 and imx219 should connect the same bus?

The IMX219 bus number should be the same with max96724 but it’s 11?

It could be the device tree need to adjust.

Thanks

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