Jetson NX Developer Kit sensor driver development

Hello!

I have a Jetson Xavier NX developer kit and would like to be able to work with a proprietary imx290 camera through CSI-MIPI, using one of the two CSI ports on the DK carrier board.

To do that, I have been trying to develop my own driver for some time now, following the Sensor Driver development documentation provided by NVIDIA. However, I am still stuck with the device tree, as I simply don’t understand clearly what steps I must take (which files do i need, which of them I need to reference in others…). When I connect my board (which contains another two devices that communicate using I2C, those two report an address on the I2C bus nr 2 (i2c@31800000) and on one of the other ones that are multiplexed from it, as would be expected. However, the sensor does not report at all.

Is this behaviour normal? Shouldn’t the IMX290 sensor also report, even though I would not be able to communicate with it?

Another thing, is it possible to change the IMX219 driver (raspberry pi camera v2), which I can confirm is working, so that it works with my own sensor?

This approach, if possible, does present a problem for me on another level, as the Raspberry Pi camera v2 module includes an oscillator that generates its own clock, and my board needs a clock signal coming from the jetson. Would this also be possible to change?

And if yes, for both my last two questions, what files would I need to change?

If anyone can help me, I would immensely appreciate it!

Cheers!

1 Like

Yes, the mclk_khz property control the input clock for sensor.
All others you should be able found it from the document.

https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/camera_sensor_prog.html#

1 Like