CSI-2 configure RAW12

Hi,

Camera connected to Jetson Nano but no frame capture.

The device connection is OV10640 + MAX9271 → MAX9286 → CSI-2 (4 lanes).
OV10640 was configured output to RAW12.
The device tree, driver, sensor_common, camera_common, vi5_format was modified to bayer_bggr12.
Below result show v4l2-ctl is no output until force to stop. The gstreamer return “Internal data stream error” and captured file size is 0.

May I know what is the possible root cause return error?
How to stream RAW12 in correct method?

Regards,
Loh

Enable the debug print in csi2_fops.c to check the error status.

Hi ShaneCCC,

After enable debug print in csi2_fops.c and run following command.

v4l2-ctl -d /dev/video0 --set-fmt-video=width=1280,height=1080,pixelformat=BG12 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=10 --stream-to=test.raw

Results on dmesg,

[ 86.229935] ov10640_open : v4l2_get_subdevdata
[ 86.233853] ov10640_power_on: power on
[ 86.294155] ov10640_power_off: power off
[ 86.294427] ov10640_power_on: power on
[ 86.317924] ov10640_power_off: power off
[ 125.479628] ov10640_power_on: power on
[ 125.536312] vi 54080000.vi: Calibrate csi port 2
[ 125.540026] ov10640_power_off: power off
[ 125.540216] ov10640_power_on: power on
[ 125.582737] vi 54080000.vi: cil_settingtime was autocalculated
[ 125.582744] vi 54080000.vi: csi clock settle time: 13, cil settle time: 10
[ 125.819361] video4linux video0: frame start syncpt timeout!0
[ 125.825125] vi 54080000.vi: TEGRA_CSI_PIXEL_PARSER_STATUS 0x00000000
[ 125.825130] vi 54080000.vi: TEGRA_CSI_CIL_STATUS 0x00000000
[ 125.825135] vi 54080000.vi: TEGRA_CSI_CILX_STATUS 0x00000000
[ 125.825183] vi 54080000.vi: cil_settingtime was autocalculated
[ 125.825188] vi 54080000.vi: csi clock settle time: 13, cil settle time: 10
[ 126.027904] video4linux video0: frame start syncpt timeout!0
[ 126.034593] vi 54080000.vi: TEGRA_CSI_PIXEL_PARSER_STATUS 0x00000000
[ 126.034611] vi 54080000.vi: TEGRA_CSI_CIL_STATUS 0x00000000
[ 126.034629] vi 54080000.vi: TEGRA_CSI_CILX_STATUS 0x00000000
[ 126.034763] vi 54080000.vi: cil_settingtime was autocalculated
[ 126.034786] vi 54080000.vi: csi clock settle time: 13, cil settle time: 10

What is the meaning?

Regards,
Loh

From the log looks like there’s no any error from the REG status. It could be the sensor didn’t output any data to the bus or the lane configure incorrect.

Hi ShaneCCC,

I use oscilloscope to check output on OV10640, there is data, HS VS.
When I check output on MAX9286, the 1-clk+4-lane is no output.
(If I change camera to OV10635 UYVY, there is output on MAX9286)

It shall be MAX9271 or MAX9286 configure setting issue.
I have tried different configure but no luck. Do you have any information of RAW12 for MAX9271+MAX9286 setting?

Regards,
Loh

Sorry, I don’t have experience for the MAX92xx, You may check with vendor to get help on it.

Hi ShaneCCC,

Thank you very much.
I will check with vendor.

Regards,
Loh

Hi ShaneCCC,

I have configure MAX9286 CSI-2 output data to Jetson Nano. The format is RAW12, BG12, BGGR.
I want to know how to use gst-launch-1.0 to stream the data to display?

Regards,
Loh

Try the nvgstcapture-1.0

Hi ShaneCCC,

I found nvgstcapture-1.0 reference in Accelerated_GStreamer_User_Guide.pdf but there is no RAW12 command information.
I tried the simple command
nvgstcapture-1.0 --cus-pre-res=1280x1080 but it stop and the display message below.

===== NVMEDIA: NVENC =====
NvMMLiteBlockCreate : Block : BlockType = 4
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:557 No cameras available

If I use v4l2-ctl, it can capture and save the RAW file.

Please provide example to stream RAW12 using nvgstcapture-1.0.

Regards,
Loh

This message tell the context in the tegra_camera_platform{} have problem instead of not support RAW12.

Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:557 No cameras available