/ {
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
/**
* Physical settings to calculate max ISO BW
*
* num_csi_lanes = <>;
* Total number of CSI lanes when all cameras are active
*
* max_lane_speed = <>;
* Max lane speed in Kbit/s
*
* min_bits_per_pixel = <>;
* Min bits per pixel
*
* vi_peak_byte_per_pixel = <>;
* Max byte per pixel for the VI ISO case
*
* vi_bw_margin_pct = <>;
* Vi bandwidth margin in percentage
*
* max_pixel_rate = <>;
* Max pixel rate in Kpixel/s for the ISP ISO case
*
* isp_peak_byte_per_pixel = <>;
* Max byte per pixel for the ISP ISO case
*
* isp_bw_margin_pct = <>;
* Isp bandwidth margin in percentage
*/
num_csi_lanes = <12>;
max_lane_speed = <4000000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
/**
* The general guideline for naming badge_info contains 3 parts, and is as follows,
* The first part is the camera_board_id for the module; if the module is in a FFD
* platform, then use the platform name for this part.
* The second part contains the position of the module, ex. "rear" or "front".
* The third part contains the last 6 characters of a part number which is found
* in the module's specsheet from the vender.
*/
modules {
module0 {
badge = "zedx_bottomleft_ar0234";
position = "bottomleft";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
// devname = "zedx 30-0020";
/* Declare the device-tree hierarchy to driver instance */
// proc-device-tree = "/proc/device-tree/i2c@3180000/zedx_left_0@20";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_0@20";
};
};
module1 {
badge = "zedx_bottomright_ar0234";
position = "bottomright";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_0@21";
};
};
module2 {
badge = "zedx_centerleft_ar0234";
position = "centerleft";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_1@22";
};
};
module3 {
badge = "zedx_centerright_ar0234";
position = "centerright";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_1@23";
};
};
module4 {
badge = "zedx_sideleft_ar0234";
position = "sideleft";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_2@24";
};
};
module5 {
badge = "zedx_sideright_ar0234";
position = "sideright";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_2@25";
};
};
module6 {
badge = "zedx_topleft_ar0234";
position = "topleft";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_left_3@26";
};
};
module7 {
badge = "zedx_topright_ar0234";
position = "topright";
orientation = "1";
status = "okay";
drivernode0 {
status = "okay";
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/zedx_right_3@27";
};
};
};
};
};
如上是设备树配置;使用测试指令gst-launch-1.0 nvarguscamerasrc sensor-id=x ! ‘video/x-raw(memory:NVMM),width=1920,height=1080,framerate=30/1’ ! nvvidconv ! ‘video/x-raw,format=I420’ ! xvimagesink x对应设备号;如果设置module4 ~ module7 使能,测试指令报错,提示Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:794 No cameras available ;如果禁用module4 ~ module7 ;那么sensor-id=0~3可以正常预览图像。
但是v4l2的测试指令不受影响,什么情况下都可以拉取数据流;对应指令如下:v4l2-ctl -d /dev/videox --set-fmt-video=width=1920,height=1200,pixelformat=BA10 --stream-mmap --stream-count=1 --stream-to=raw10_1920x1080.raw
tegra-camera-platform设置是有什么数量限制吗?SDK版本是jetpack 6.2.1。
希望能提供排查思路
