Good morning,
I have a commercial carrier board for Orin Nano and NX with 4 sensor camera ports configure as 2 lane camera port. At the moment I have connected only 2 ports to a custom sensor board based on Sony IMX715.
I’m using Jetpack 6.1, and sensor driver and DT overlay seems correct since I have
v4l2-ctl --list-devices
NVIDIA Tegra Video Input Device (platform:tegra-camrtc-ca):
/dev/media0vi-output, imx715 10-001a (platform:tegra-capture-vi:1):
/dev/video0vi-output, imx715 12-001a (platform:tegra-capture-vi:3):
/dev/video1
If I try to capture frames with
v4l2-ctl -c bypass_mode=0 --stream-mmap --stream-count=100 -d /dev/videoX
everything works correctly
If I try to capture frame using argus framework I have something strange. First of all I have the following
nvargus_nvraw --lps
nvargus_nvraw version 1.16.0
Number of supported sensor entries 1
Entry Source Mode Uniquename Resolution FR BitDepth Mode
Index Index Index CSI Dyn Type
0 0 0 dsboard_topleft_ornx 3864x2192 14 10 10 Bayer
When I run this command I have the following output to argus-deamon
=== NVIDIA Libargus Camera Service (0.99.33)=== Listening for connections…=== nvargus_nvraw[4233]: Connection established (FFFFB66CB840)OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module0
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
OFParserEnumerateDriverNode: v4l2_sensor: failed to parse device-tree to driver node
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module2
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module3
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
(NvCamV4l2) Error ModuleNotPresent: V4L2Device not available (in /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function findDevice(), line 256)
(NvCamV4l2) Error ModuleNotPresent: (propagating from /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function initialize(), line 60)
(NvOdmDevice) Error ModuleNotPresent: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 111)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 0. (error 0xA000E)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 725)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 455)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 382)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 554)
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
(NvOdmDevice) Error NotInitialized: hDev Table not initialized (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 101)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 1. (error 0x3)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 725)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 455)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 382)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 554)
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
(NvCamV4l2) Error ModuleNotPresent: V4L2Device not available (in /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function findDevice(), line 256)
(NvCamV4l2) Error ModuleNotPresent: (propagating from /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function initialize(), line 60)
(NvOdmDevice) Error ModuleNotPresent: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 111)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 2. (error 0xA000E)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 725)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 455)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 382)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 554)
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
CAM: serial no file already exists, skips storing againLSC: LSC surface is not based on full res!
=== nvargus_nvraw[4233]: CameraProvider initialized (0xffffb0abcd20)=== nvargus_nvraw[4233]: CameraProvider destroyed (0xffffb0abcd20)=== nvargus_nvraw[4233]: Connection closed (FFFFB66CB840)=== nvargus_nvraw[4233]: Connection cleaned up (FFFFB66CB840)
With Argus I’m able to see and use only one camera.
The section of DT overlay related to “tegra-camera-platform” is the following
modules {
module0 {
status = “okay”;
badge = “dsboard_bottomleft_ornx”;
position = “bottomleft”;
orientation = “1”;
drivernode0 {
status = “okay”;
pcl_id = “v4l2_sensor”;
devname = “imx715 9-001a”;
sysfs-device-tree = “/sys/firmware/devicetree/base/bus@0/i2c@3180000/pca9544a@70/i2c@0/imx715_a@1a”;
};
};
module1 {
status = “okay”;
badge = “dsboard_centerleft_ornx”;
position = “centerleft”;
orientation = “1”;
drivernode0 {
status = “okay”;
pcl_id = “v4l2_sensor”;
devname = “imx715 10-001a”;
sysfs-device-tree = “/sys/firmware/devicetree/base/bus@0/i2c@3180000/pca9544a@70/i2c@1/imx715_b@1a”;
};
};
module2 {
status = “okay”;
badge = “dsboard_centerright_ornx”;
position = “centerright”;
orientation = “1”;
drivernode0 {
status = “okay”;
pcl_id = “v4l2_sensor”;
devname = “imx715 11-001a”;
sysfs-device-tree = “/sys/firmware/devicetree/base/bus@0/i2c@3180000/pca9544a@70/i2c@2/imx715_c@1a”;
};
};
module3 {
status = “okay”;
badge = “dsboard_topleft_ornx”;
position = “topleft”;
orientation = “1”;
drivernode0 {
status = “okay”;
pcl_id = “v4l2_sensor”;
devname = “imx715 12-001a”;
sysfs-device-tree = “/sys/firmware/devicetree/base/bus@0/i2c@3180000/pca9544a@70/i2c@3/imx715_d@1a”;
};
};
Could you help me to understand the problem?
Regards