Continuing the discussion from GMSL MAX9296+MAX9295+IMX390 camera driver develop:
Hi，The module I use is AGX Orin, the system version is R35.1.
I tried Jetson-IO to configure Jetson AGX CSI Connector(enable [Jetson Camera IMX390])，the file kernel_tegra234-p3701-0004-p3737-0000-user-custom.dtb not saved to /boot，but I can see the change in extlinux.
This is the kernel log. klogs.txt (67.8 KB)
GMSL is now upregulated on the custom board, but no /dev/video0 device is created.
Considering that it may not be configured well, we used the official dtb file to adjust it.
Both 9295 and 9296A can be found under IIC7, but the information about tca9546@70 in dmesg is not configured, and this part of the configuration cannot be adjusted under IIC7 (the original dtb part is under IIC2).
it’s pca954x as i2c mux. you should check you’ve given regulator settings correctly to enable that.
you should also check reference SerDes camera driver for reference.
for instance, $public_sources/kernel_src/hardware/nvidia/platform/t23x/common/kernel-dts/t234-common-modules/tegra234-camera-imx390-a00.dtsi
OK. I tried to enable all imx390 related, including i2cmux,tegra-capture-vi、nvcsi@15a0000, and now /dev/video0 can be found, but still can’t open it by gst-launch-1.0.
As for the camera part, I only modify it in dtb and then replace the file under /boot/dtb/. Is it valid?
In this part, I opened i2cmux@70 and pca9546@70, and the system did not read it, so an error was reported. However, I read it through the i2c-tools, but I did not find 70 related items in the IIC. Is this part of the hardware that does not work?
it’s an i2c bus multiplexer/switch (at address 0x70) will have several child bus that are numbered uniquely in a device dependent manner.
BTW, are you kept using r35.1? is it possible for moving to the latest Jetpack release version, JP-5.1.2/l4t-r35.4.1
If there is no tca9546 on our board, how should we modify the configuration of this part?
Yes, the current version is R35.1, there is a system adaptation of R35.4.1, but now need a system that can use R35.1 of GMSL.
please see-also reference device tree, it’s based-on an i2c bus multiplexer.
you may refer to this device tree for implementation to define the node accordingly.
for example, $public_sources/kernel_src/hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3737-0000-camera-imx390-a00.dtsi
it’s still reporting pca954x 2-0070: device detect skipped.
and there’re lots of tegra-i2c 31b0000.i2c: I2C transfer timed out failures.
may I confirm the camera setup you’re using?
for example, which camera vendor it is. had you also contact with them to confirm the functional Jetpack version?
the default IMX390 dtbo is supported with Leopard’s LPRD-001 board. please see-also… Hardware Module Connectivity.
Yes, errors have been reported about pca.
timed out error because I used i2c-tools to read each IIC bus.
The camera vendor we connected is SENSING, the model is as follows：SG2-IMX390C-GMSL2-H190X SG2-IMX390C-GMSL2-Hxxx-s.pdf (1.3 MB)
Have asked the vendor, is to support JP5.02 version.
The documentation on this part of Hardware Module Connectivity has been studied, and R35.1 is configured in this way.
The problem may be that it is not clear why the pca954x field keeps reporting errors.