Hi, we have a camera system that works OK on Jetpack 5.1.3. However, we’d like to upgrade the Jetpack to evaluate the performance boost, and the bug fix.
Our system consist of a Jetson Orin Nano, on a LI-ONX-CB-4CAM-FP carrier board, which has a FPGA to emulate an I2C mux (pca9548). The carrier board connects to 3 of DS90UB954, and each DS90UB954 connects to 2 cameras with coax cable, which contains AR0234 and DS90UB953.
Unfortunately, Leopard Imaging does not supply any help on Jetpack 6. So we are on our own.
I don’t think the MIPI signal matters before the camera start streaming. As for I2C signal flow, the I2C bus on 3180000 got multiplexed into 8 additional I2C buses. On 3 of the additional bus, there will be 3 devices: DS90UB954 de-serializers, and 2 sensors got I2C relayed by DS90UB954.
So far we’ve got the I2C mux working, and DS90UB954 driver working. But when we try to load AR0234 driver, the module does not probe.
We’ve tested the I2C signals. The Jetson never tried to send signal to AR0234 address, so the issue should be on software side. The device tree seems partially work, as we I run tree /sys/bus/i2c/devices/
/sys/bus/i2c/devices/
├── 1-0050 -> ../../../devices/platform/bus@0/3160000.i2c/i2c-1/1-0050
├── 1-0057 -> ../../../devices/platform/bus@0/3160000.i2c/i2c-1/1-0057
├── 2-0077 -> ../../../devices/platform/3180000.i2c/i2c-2/2-0077
├── 3-0021 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-3/3-0021
├── 3-0022 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-3/3-0022
├── 3-0030 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-3/3-0030
├── 4-0021 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-4/4-0021
├── 4-0022 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-4/4-0022
├── 4-0030 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-4/4-0030
├── 5-0021 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-5/5-0021
├── 5-0022 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-5/5-0022
├── 5-0030 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-5/5-0030
├── 6-0021 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-6/6-0021
├── 6-0022 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-6/6-0022
├── 6-0030 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-6/6-0030
├── i2c-0 -> ../../../devices/platform/bpmp/bpmp:i2c/i2c-0
├── i2c-1 -> ../../../devices/platform/bus@0/3160000.i2c/i2c-1
├── i2c-10 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-10
├── i2c-2 -> ../../../devices/platform/3180000.i2c/i2c-2
├── i2c-3 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-3
├── i2c-4 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-4
├── i2c-5 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-5
├── i2c-6 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-6
├── i2c-7 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-7
├── i2c-8 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-8
└── i2c-9 -> ../../../devices/platform/3180000.i2c/i2c-2/i2c-9
I can see the cameras appear at addresses such as 3-0021. In side that folder, when I do cat uevent
OF_NAME=custom_ar0234_a
OF_FULLNAME=/i2c@3180000/tca9548@77/i2c@0/custom_ar0234_a@21
OF_COMPATIBLE_0=onsemi,sh_ar0234
OF_COMPATIBLE_N=1
MODALIAS=of:Ncustom_ar0234_aT(null)Consemi,sh_ar0234
And those information matches the device tree. However, there is a waiting_for_supplier
files, which content was 1. I think it should have something to do with the no-probing issue.
We’ve used the attached dtsi files with tegra234-p3768-0000+p3767-0003.dts to build the dtb.
dtsi.zip (4.4 KB)
tegra234-p3768-0000+p3767-0003.zip (25.8 KB)
And the decompiled dts
running_system_change_id.zip (26.2 KB)
We also tried to compare some device tree from Veye imaging for
Jetpack 6.2
and Jetpack 5.1.3
with no success.
We are out of clue to get the code work, any suggestions will be appreciated. Thanks