We are trying to run an object tracking application using opencv on L4T 24.1 with ov5693 sensor. It uses V4L2 framework. We were able to run it on 23.2 (using tegra_camera.ko and ov5693_v4l2.ko). After moving to 24.1, we are hitting a lot of roadblocks. We could stream videos using nvgstcapture application, though. But it uses V4L2 non-compliant driver nvhost_vi.
At first, the issue was that we couldn’t see any tegra_camera.ko, nvhost_vi.ko ,ov5693_v4l2.ko which were the modules of interest when working with 23.2. But after applying some changes to the config file according to the below link ,the modules were built.
However, we couldn’t remove nvhost_vi using ‘sudo rmmod nvhost_vi’. ‘dmesg’ showed some stack dump (seemingly a segfault). Hence tegra_camera cannot be inserted without properly removing nvhost_vi.
Then we disabled nvhost_vi module in kernel configuration so that it is not compiled/loaded. Then we inserted tegra_camera after booting up.
The issue now is that /dev/video0 is not created. And when analyzing further found that ov5693_v4l2 registration as i2c device has failed (Failed to register i2c client ov5693_v4l2 at 0x36 (-16)).
Could you please give us any suggestions on how ov5693_v4l2 can be enabled?
Thanks in advance