Hello,
I am creating a DT for 2 cameras drivers, The first DT created I am using 4 cameras connected, and the 4 cameras are working correctly
The second DT created for another driver, I am using 4 cameras connected, but I am only able to capture from 2 cameras using GStreamer, the error reported is:
Error generated. gstnvarguscamerasrc.cpp, execute:751 No cameras available
This is a summary of the tegra-camera-platform code configured:
tegra-camera-platform {
modules {
module0 {
badge = "cam1_port0";
position = "front";
orientation = "1";
status = "okay";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "cam1 42-0026";
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@72/i2c@0/cam1@26";
status = "okay";
};
};
module1 {
badge = "cam1_port2";
position = "front";
orientation = "1";
status = "okay";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "cam1 43-0026";
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@72/i2c@1/cam1@26";
status = "okay";
};
};
module2 {
orientation = "1";
position = "rear";
badge = "cam1_port3";
status = "okay";
drivernode0 {
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@72/i2c@2/cam1@26";
devname = "cam1 40-0026";
pcl_id = "v4l2_sensor";
status = "okay";
};
};
module3 {
orientation = "1";
position = "rear";
badge = "cam1_port4";
status = "okay";
drivernode0 {
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@72/i2c@3/cam1@26";
devname = "cam1 41-0026";
pcl_id = "v4l2_sensor";
status = "okay";
};
};
};
};
For the second camera I only have changed the badge, devname and proc-device-tree, but only 2 cameras are working, the camera of module1
and module3
.
Doing some tests enabling only 2 cameras I have seen the I am able to capture from camera of module 0, changing the position
parameter of module2
module0 {
badge = "cam1_port0";
position = "front";
...
};
module1 {
badge = "cam1_port2";
position = "rear";
...
};
But with this configuration I am not able to capture from module1
.
Do you know why the position is affecting which camera works?