I cannot reply anymore, but after successfully patching the driver file and building the kernel, still cannot get the video stream from CAM0, any clue what is the reason that causes CAM1 to work fine but CAM0 is not streaming ???
there’re probing failures, which means the camera device did not register to linux kernel.
[ 17.939546] imx219 9-0010: imx219_board_setup: error during i2c read probe (-121)
[ 17.956330] imx219 9-0010: board setup failed
[ 17.961038] imx219: probe of 9-0010 failed with error -121
[ 17.984058] imx219 10-0010: imx219_board_setup: error during i2c read probe (-121)
[ 17.997218] imx219 10-0010: board setup failed
[ 18.002347] imx219: probe of 10-0010 failed with error -121
may I know which Jetpack release version, and which camera module you’re working with?
for instance, is it Raspberry pi, imx219? did you have camera device connected before power-on?
However, By testing, only CAM1 port on jetson was working fine and streaming the video, but CAM0 port was only detecting the board but showing a black screen video stream.
I got an access to the driver-source code of the camera board (Jetvariety cameras)
I tried to understand the problem from the source_code of the driver, I just found one thing, that port-index was set to 0 not 1 in some instances for serial_b, so I changed it to 1 and I patched the driver file and builded the kernel following the steps you mentioned in my last-topic.
Now, After patching the edited patch driver file, most of the times the board is not detected
besides, since it’s a global shutter camera, could you please try adding set_mode_delay_ms device tree property to configure maximum wait time for the first frame after capture starts.
a) After patching the edited driver file
(The board is not detected and definitely no stream is running) dmesg_log_afterPatch.txt (69.1 KB)
b) Original setup without patching the edited driver file:
The board is detected, but no example is running in background dmesg_log_with_original_driver_no_stream.txt (134.5 KB)
c) Original setup without patching the edited driver file:
The board is detected, and the streaming example is running in background dmesg_log_with_original_driver_streaming.txt (99.6 KB)
I revised the symbol of NVCSI, it was correctly set
this is incorrect commands, Orin Nano it’s using kernel-dtb partition.
besides, you should running with initrd, for instance, Flashing with initrd.
BTW,
please also note that… there’s polarity swap, i.e. CSI0 D1 and CSI1 D0 P/N will always been swizzled for P/N.
please use device tree property, lane_polarity to configure a polarity swap on any lane.
it looks system did not recognize dtbo correctly.
please refer to developer guide, Device-tree overlay for the steps to create and apply dtb overlay file.