We based on TX1 reference and designed our own custom board, almost is same. A little difference is we try to mount 2 camera on CSI bus but I think its no problem.
I tried to flash latest Jetpack for Jetson TX1, everything work well. I see /dev/video0 character but I can not do anything with it. So I think it is not connected to real camera.
I downloaded the kernel source (24.1), using menuconfig to add more modules, compiled success. Then, flash my own kenel, and modules to device. Try to start camera driver like this :
sudo rmmod nvhost-vi
sudo modprobe ov5693_v4l2
sudo modprobe tegra_camera
After modprobe tegra_camera module, I got this error:
[ 401.280824] ov5693 6-0036: camera_common_regulator_get vif ERR: fffffffffffffdfb
[ 401.289992] ov5693 6-0036: camera_common_regulator_get vif ERR: fffffffffffffdfb
I tried to look around for similar but look like no one.
Please give me some advices.
If your design almost the same with reference board at list one sensor connect to cis-b should be working. You could use the release image to debug this one.
You can use v4l2-ctrl utility to check the /dev/video is connect to ov5693 or not. You should see the information like below. May need install v4l-utils to get v4l2-ctl.
ubuntu@tegra-ubuntu:~$ v4l2-ctl --all
Driver Info (not using libv4l2):
Driver name : tegra-video
Card type : vi-output-2
Bus info : platform:vi:2
Driver version: 3.10.96
Capabilities : 0x84000001
Video Capture
Streaming
Device Capabilities
Device Caps : 0x04000001
Video Capture
Streaming
Format Video Capture:
Width/Height : 2592/1944
Pixel Format : ‘RG10’
Field : None
Bytes per Line: 5184
Size Image : 10077696
Colorspace : SRGB
Thank for your answer. After 1 day investigating, I got a bit clear. My design have a bit difference with reference board. My board have 2 camera with 4 lanes CSI (A+B and C+D), I understand that I need rebuild my own module for each camera. So I tried to rebuild imx135_v4l2 module instead of ov5693_v4l2 module to make sure no relation with ov5693. Then, I tried to modprobe like this :
Hi
So your design have two imx135? Our camera reference board have board ID from the eeprom that be used to load the correct sensor modules. And the TX1 jetson-cv didn’t have imx135 board design you have to add it yourself.
How to skip auto detect and enable specific camera board.
In Jetson CV base dtsi file tegra210-jetson-cv-base-p2597-2180-a00.dts, modify the following line to include your specific camera dtsi file #include “tegra210-platforms/tegra210-jetson-cv-camera-modules.dtsi”
Disable camera plugin manager by commenting out the following line in tegra210-jetson-cv-plugin-manager.dtsi file #include “tegra210-jetson-cv-camera-plugin-manager.dtsi”
I have a similar problem in that I’m developing a new camera driver. I’m basing it off the ov5693 as that seems best supported.
I’ve noticed that if I don’t plugin the e3326 camera board the ov5693 driver doesn’t even attempt to load. Is this because the plugin manager can’t find anything?
Is there a way to force the ov5693 driver to load?
Hi clutch
Yes, you can disable the plugin manager to include the ov5693’s DTS file only to enable it. You can reference to the sensor programing guide for detail information.