The input video stream is generated by a SDI-to-CSI2 adapter, it’s a 4-lane, 1920x1080@60, YUV422 signal. And I connected the input MIPI-CSI data and clk lines directly to the CSI port of tx2.
We use the ov5693.c as template to implement the sensor driver.
But when I modify the kernel source code on R32.1, The error has occurred:
[ 4.374937] OV5693_sdi1 2-0036: ctrl Gain range update failed
[ 4.374942] OV5693_sdi1 2-0036: Error -34 updating mode specific control ranges
[ 4.374945] OV5693_sdi1 2-0036: Error -34 updating control ranges
[ 4.374964] OV5693_sdi1 2-0036: Failed to init ctrls ov5693
[ 4.374967] OV5693_sdi1 2-0036: tegra camera subdev registration failed
I found the code between the r28.1 and r32.1 is very different.
we had update linux kernel version to kernel-4.9 for JetPack-4.x
suggest you refer to [Sensor Driver Programming Guide]-> Camera Sensor Drivers Porting Guide for porting your sensor driver.
thanks
you need to have kernel drive update to extend YUV format support,
please check the attachment of the r32.1 patch to add YUV format for VI drivers.
thanks
you should disable plugin manager if your camera board don’t have EEPROM.
please also refer to [Sensor Driver Programming Guide]-> Using Plugin Manager session.
thanks
all these dtsi files combine and build into signal dtb file for Jetson platform.
suggest you have an alternative way to check if all your configuration included in the final dtb file.
here’s commands to disassembler the dtb file into txt file for your quick checking.
thanks
I have sloved the video0 problem with delete this line: #include <t18x-common-platforms/tegra186-quill-camera-modules.dtsi>
But when I use qv4l2 to get video stream, update contorl ranges error has occurred:
[ 107.609613] ov5693_sdi1 2-0036: Error updating control ranges -22
[ 107.684435] ov5693_sdi1 2-0036: Error updating control ranges
[ 127.782079] ----->suchb:ov5693_stop_streaming
bellow is my dtsi code for 1080p30fps pre-configured mipi csi video:
please check your control range settings of below CID controls,
you may also add some debug message to check which control caused the failure.
TEGRA_CAMERA_CID_GAIN
TEGRA_CAMERA_CID_FRAME_RATE
TEGRA_CAMERA_CID_EXPOSURE
TEGRA_CAMERA_CID_EXPOSURE_SHORT
please note that there are two V4L2 Kernel Driver versions if you’re working with JetPack-4.2
please refer to Sensor Driver Programming Guide, and check the [V4L2 Kernel Driver (Version 2.0)] for details.
thanks
this error means no sensor modes available, could you please check your kernel driver header.
you should follow the camera_common_frmfmt structure and report your sensor modes.
please also refer to below for an example,
I have merge the Topic1050578_Apr24_patch.tar.gz patch, and made the vo5693_frmfmt only have one frameformat OV5693_MODE_1920X1080.
But when i use qv4l2 to grab video stream, the Capture Image Formats can’t be set to YU12 or YUV422,it always be BG10 as default, and dmesg is no error line.
when run :v4l2-ctl -d /dev/video0 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=1 --stream-to=test.raw
since you refer to bayer sensor device tree and have modification to yours.
had you also update sensor device tree to report pixel format as YUV format.
for example,
if you still meet failure by correcting sensor device tree and using complete commands to access the camera sensor.
could you please enable VI tracing logs as below to gather more details.
thanks