Capture video

Our HW configuration is using DS90UB960 connected via MIPI to XAVIER-NX to CAM0
The I2C configuration of the DS90UB960 is done by PSOC CPU connected to it and not through the XAVIER-NX.
We configured the DS90UB960 to sent test pattern on channel 0 of the MIPI.
On the XAVIER-NX I have build camera driver called ‘eCamera’ based on ‘imx185’ driver and its ‘device tree’ as well.
In the driver I have blocked the writing to the I2C and all the functions return ‘success’.

After loading my driver I can see :
sits-nx@sitsnx-desktop:/dev$ ll video*
crw-rw----+ 1 root video 81, 0 Jun 7 08:38 video0
crw-rw----+ 1 root video 81, 4 Jun 7 08:38 video1

I’m trying to catch the streaming by using the command:
v4l2-ctl --device /dev/video0 --stream-mmap --stream-to=frame.raw --stream-count=1 --set-ctrl bypass_mode=0
After a while I’m stopping the running with ^c

When using ‘dmesg’ command I can see the following:
[20383.374488] eCamera_power_on()
[20383.388316] [RCE] vi5_hwinit: firmware CL2018101701 protocol version 2.2
[20383.390221] eCamera_write_table()
[20383.390318] eCamera_set_mode()
[20383.390382] eCamera_start_streaming() enter
[20383.390472] eCamera_write_table()
[20383.390529] eCamera_start_streaming() exit
[20385.888281] tegra194-vi5 15c10000.vi: no reply from camera processor
[20385.888439] tegra194-vi5 15c10000.vi: uncorr_err: request timed out after 2500 ms
[20385.888615] tegra194-vi5 15c10000.vi: err_rec: attempting to reset the capture channel
[20385.892028] tegra194-vi5 15c10000.vi: err_rec: successfully reset the capture channel
[20388.416295] tegra194-vi5 15c10000.vi: no reply from camera processor
[20388.416488] tegra194-vi5 15c10000.vi: uncorr_err: request timed out after 2500 ms
[20388.416631] tegra194-vi5 15c10000.vi: err_rec: attempting to reset the capture channel
[20388.421043] tegra194-vi5 15c10000.vi: err_rec: successfully reset the capture channel
[20388.421296] eCamera_write_table()
[20388.421364] eCamera_write_reg()
[20388.421487] eCamera_stop_streaming()
[20388.429057] eCamera_power_off()

And the size of the file frame.raw is 0
-rw-rw-r-- 1 sits-nx sits-nx 0 Jun 7 14:17 frame.raw

What I’m doing wrong?
Does it mean that no stream of video arrive?

Get the trace log to check.

https://elinux.org/Jetson/l4t/Camera_BringUp

On command:
v4l2-compliance -s -d /dev/video0

I got the following errors :

Streaming ioctls:
fail: v4l2-test-buffers.cpp(829): ret >= 0 || err != EINVAL
test read/write: FAIL
test blocking wait: OK
fail: v4l2-test-buffers.cpp(1398): q.create_bufs(node, 1, &fmt) != EINVAL
test MMAP (no poll): FAIL
fail: v4l2-test-buffers.cpp(1398): q.create_bufs(node, 1, &fmt) != EINVAL
test MMAP (select): FAIL
fail: v4l2-test-buffers.cpp(1398): q.create_bufs(node, 1, &fmt) != EINVAL
test MMAP (epoll): FAIL
fail: v4l2-test-buffers.cpp(1601): ret && ret != ENOTTY (got 22)
fail: v4l2-test-buffers.cpp(1732): setupUserPtr(node, q)
test USERPTR (no poll): FAIL
fail: v4l2-test-buffers.cpp(1601): ret && ret != ENOTTY (got 22)
fail: v4l2-test-buffers.cpp(1732): setupUserPtr(node, q)
test USERPTR (select): FAIL
test DMABUF: Cannot test, specify --expbuf-device

May be that can help to guide me…

Check the programing guide to check the sensor driver.

https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3261/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/jetson_xavier_camera_soft_archi.html#

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.