This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software:
I connected my CSI camera to my board, but the sensor didn't probe. What are the possible reasons the sensor doesn't probe?
Other parts: AM62A3, , AM62A3-Q1, AM62A7-Q1, AM62P, AM67, AM68A, AM69A, AM623, AM625
There can be various reasons why a sensor doesn't probe. Here are a few things to check and debug.
1. Check the boot message and see if the CSI2-Rx interface is probed.
Run the following command:
root@am62axx-evm:~# dmesg | grep csi
If this command returns nothing, it most likely means that device tree overlay for the sensor is not loaded. Then check the u-boot message for any dtbo load failure, for example
Working FDT set to 88000000 Failed to load '/boot/dtb/k3-am62x-sk-csi2-imx219.dtbo'
The above message indicates that the dtbo file can not be found and loaded. The path should be "/boot/dtb/ti/<sensor dtbo file>". The solution is to add "ti/" in the dtbo path:
name_overlays=ti/<sensor dtbo file>
If the "dmesg | grep csi" command shows probe failure, such as below, it is most likely caused by errors in the device tree overlay for CSI2-RX.
cdns-csi2rx: probe of 30101000.csi-bridge failed with error -22
Check the device tree overlay of the sensor by comparing to the existing sensor overlays in the SDK. One common error is using the wrong CSI-2 Rx port. For example, AM62A SoC has only one CSI-2 Rx port and "csi0_port0" should be used as below in the IMX219 overlay:
&csi0_port0 { status = "okay"; csi2rx0_in_sensor: endpoint { remote-endpoint = <&csi2_cam0>; bus-type = <4>; /* CSI2 DPHY. */ clock-lanes = <0>; data-lanes = <1 2>; }; };
If the device tree overlay for CSI2-Rx interface is correct, it should have the following message:
root@am62axx-evm:~# dmesg | grep csi cdns-csi2rx 30101000.csi-bridge: Probed CSI2RX with 2/4 lanes, 4 streams, external D-PHY
2. Check the boot message and search for sensor probing errors.
For example, one common sensor probing error is:
root@am62axx-evm:~# dmesg | grep imx219 [ 6.520787] imx219 4-0010: Error reading reg 0x0000: -121 [ 6.520796] imx219 4-0010: failed to read chip id 219 [ 6.547515] imx219: probe of 4-0010 failed with error -121
If this kind of error is seen, try the following debug options:
root@am62axx-evm:~# i2cdetect -l i2c-0 i2c OMAP I2C adapter I2C adapter i2c-1 i2c OMAP I2C adapter I2C adapter i2c-2 i2c OMAP I2C adapter I2C adapter i2c-3 i2c i2c-2-mux (chan_id 0) I2C adapter i2c-4 i2c i2c-2-mux (chan_id 1) I2C adapter i2c-5 i2c i2c-1-mux (chan_id 0) I2C adapter root@am62axx-evm:~# i2cdetect -y -r 4 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- 10: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- UU -- -- -- -- -- --
For other common problems related to CSI camera please refer to this FAQ: