Hello and regards,
I’m working on a jetson Xavier NX with IO-Base-board-B running R35.6.4
I am building a device tree and kernel driver for connecting and FPGA via CSI-2 and I2C (FPGA acts as a custom camera). I’m trying to integrate the device tree as an overlay and add it to the system using jetson-io tools. the i2c slave address is 0x56 running at 400Khz.
I followed the guidelines on Camera Development and when booting the jetson with new device tree, but the device never recognizes the I2C slave. when plugging the i2c signals to oscilloscope, I see the the scl and sda toggle and generate correct 0x56 address, but jetson does not accept ack result from the slave (with this in mind I assume the problem is not the I2C mux on the board).
As test, I changed the I2C address to 0x10 and deployed dual ixm219 overlay to see if it can register the camera. it did not extend scl sda toggles on oscope. (I generate correct register values on the FPGA for chip ID for imx219).
for another test, I connected an imx219 camera. the device gets recognized only at boot, if I connect the same camera after linux boots up, the i2cdetect does not recognize the camera, based on this whatever happens at boot time is different.
The same FPGA design does work with RPi5 and i2cdetect recognized FPGA and imx219.
command used is
i2cdetect -r -y 9
I have attached the device tree.
tegra194-gmax3405-overlay.txt (6.0 KB)