Hi,
I am working on enabling video capture for a camera driver on a Jetson Orin Nano using a 4-lane configuration in JetPack 6.2. I have read that CAM1 is the only port that supports 4 lanes, so I am updating the device-tree node to use the CAM1 port.
According to the documentation and other forum posts, the CAM1 port is routed to CSI-C, which should correspond to port index 2 with the serial_c interface. here is the port configuration I am currently testing:
tegra-capture-vi {
...
ports {
...
port@0 {
...
camera_vi_in0: endpoint {
port-index = <2>;
bus-width = <4>;
remote-endpoint = <&camera_csi_out0>;
};
};
};
};
nvcsi@15a00000 {
...
channel@0 {
...
ports {
...
port@0 {
reg = <0>;
camera_csi_in0: endpoint@0 {
port-index = <2>;
bus-width = <4>;
remote-endpoint = <&camera_out0>;
};
};
port@1 {
...
camera_csi_out0: endpoint@1 {
remote-endpoint = <&camera_vi_in0>;
};
};
};
};
};
camera_a@1a {
...
devnode = "video0";
mode0 {
...
num_lanes = "4";
tegra_sinterface = "serial_a";
};
ports {
...
port@0 {
reg = <0>;
camera_out0: endpoint {
port-index = <2>;
bus-width = <4>;
remote-endpoint = <&camera_csi_in0>;
};
};
};
};
The driver loads and /dev/video0 is created, but no frames are being received. The following errors appear in dmesg:
[ 2533.540865] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 2533.540891] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 2533.541735] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
-
Can you review the overlay port settings and let me know if there’s anything incorrect?
-
Is it possible to capture using 4 lanes on the Orin Nano using JetPack6? I found in IMX477 4lane on CAM1 - #24 by dakejahl that CAM1 may not work properly with the IMX477 4-lane overlay in JP6.
-
Is it possible to capture using 4 lanes on the Orin NX using JetPack6?
Thanks!
*** Please note that this reply is generated by LLM automatically ***
Based on the provided context, I’ll address the question and provide a comprehensive answer.
The question is about enabling video capture for a camera driver on a Jetson Orin Nano using a 4-lane configuration in JetPack 6.2. The user has updated the devicetree node to use the CAM1 port, which is routed to CSIC (port index 2 with the serialc interface). However, the driver loads, and dev/video0 is created, but no frames are being received, and errors appear in dmesg.
To review the overlay port settings, let’s compare the provided configuration with the recommended settings:
- CAM1 port: The user has correctly identified that CAM1 is the only port that supports 4 lanes on the Jetson Orin Nano.
- CSIC (port index 2): The user has correctly routed the CAM1 port to CSIC, which corresponds to port index 2 with the serialc interface.
- Overlay port settings: The user’s configuration is not provided in detail, but based on the errors, it seems that the overlay port settings might be incorrect.
Comparing with other forum posts and documentation, here are some potential issues:
- IMX477 4-lane overlay: The user found a post indicating that CAM1 may not work properly with the IMX477 4-lane overlay in JP6. This could be a potential issue.
- Port configuration: The user’s port configuration is not provided, but it’s essential to ensure that the port settings match the camera’s requirements.
To resolve the issue, I recommend the following:
- Verify the overlay port settings: Double-check the overlay port settings to ensure they match the camera’s requirements.
- Check the IMX477 4-lane overlay: Investigate the potential issue with the IMX477 4-lane overlay in JP6 and consider alternative overlays or workarounds.
- Consult the camera driver documentation: Review the camera driver documentation to ensure that the devicetree node and port configuration are correct.
- Test with a different camera: If possible, test the setup with a different camera to isolate the issue.
In summary, while the user has correctly identified the CAM1 port and routed it to CSIC, there might be issues with the overlay port settings or the IMX477 4-lane overlay in JP6. Further investigation and verification of the port settings and camera driver documentation are necessary to resolve the issue.
*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***
Do you config the sensor output by 4 lane setting?
hello kimberly.carvajal,
just an FYI,
per my checking with Jetson Orin Nano developer kit/ JP-6.2/ dual IMX477.
although I’ve configure CAM1 port (CSI-C) with 4-lane settings, the reference camera module, IMX477’s 4-lane configure it’s not outputting camera frames correctly. it might be the issue on sensor side.
so.. there’s an issue (we’ve internal tracking bug ticket) with 4-lane configuration in JetPack-6.2.
if that’s possible, please rollback to JP-5 to confirm IMX477’s 4-lane settings.
Hi @ShaneCCC @JerryChang,
Sensor is configured to output 4 lanes, MIPI signal was previously verified.
IMX477’s 4-lane issue is related to the sensor registers or to an issue in the Jetson Orin Nano configuration?
Does the dtb configuration that we are using is correct for Cam1 4 lanes? Could be any missing configuration from the board/JetPack?
We will rollback to JP5 and test our current camera.
hello kimberly.carvajal,
let me have confirmation of your hardware combination..
did you test with Jetson Orin Nano Developer kit + Raspberry Pi High Quality Camera, IMX477?
I’ve a quick try with JP-5.1.4/r35.6.0/dual IMX477, it seems we cannot enable IMX477’s 4-lane configuration.
if you test camera stream with Applications Using V4L2 IOCTL Directly,
it’ll only check device tree for port bindings, and rest of the sensor programming settings came from sensor init registers.
are you able to arrange hardware resources for probing the MIPI signaling?
it would help for issue narrow down to the sensor side or tegra side.
HI @JerryChang
Currently we do not have a IMX477 for 4 lanes.
The MIPI signal has been previously verified and it is delivering buffers.
What do you mean that you cannot enable IMX477’s 4 lane configuration? Have you seen any error trying to dequeue with the IMX477’s 4 lane configuration?
Regards,
hello kimberly.carvajal,
please see-also reference driver,
$public_sources/r36.4.4/Linux_for_Tegra/source/kernel_src/nvidia-oot/drivers/media/i2c/imx477_mode_tbls.h
there’re 2-lane/4-lane register configuration for IMX477.
enum {
IMX477_MODE_3840x2160_30FPS,
IMX477_MODE_1920x1080_60FPS,
IMX477_MODE_3840x2160_30FPS_4LANE,
IMX477_MODE_1920x1080_60FPS_4LANE,
I’ve tested with Jetson Orin Nano Developer kit + Raspberry Pi High Quality Camera, IMX477. it works with 2-lane config, but no streams with 4-lane config.
according to the tracing logs, it looks there’s no validate frames on the CSI channel, although I don’t have resources to probe the MIPI signaling for confirmation.
Hi @JerryChang,
Which overlay are you using to test the IMX477 4lane?
In IMX477 4lane on CAM1 - #15 by dakejahl it is mentioned that the ports are switch.
hello kimberly.carvajal,
there’re some incorrect settings, it was 4-lane configure on CSI-B (which should not supported); the other camera it’s using 2-lane configure on CSI-C.
hence, please apply this patch manually, CAM0/CSI-B for 2-lane config; CAM1/CSI-C for 4-lane config.
0001-t23x-p3768-overlay-fix-imx477-dual-4lane-settings.patch (5.1 KB)