This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
我在开发摄像头启动过程中遇到了一个问题。 详细信息如下:
共有四个摄像头连接到解串器。 但不需要控制这四个摄像头、因此我只实现了解串器的驱动器。
我是根据《处理器 SDK Linux 软件开发人员指南》的第3.2.2.2章 CSI2RX 开发的。
已探测驱动程序、以下是来自 lsmode 和媒体图表的日志。
$ lsmod | grep 712 max96712 12288 1 v4l2_async 20480 4 v4l2_fwnode,j721e_csi2rx,cdns_csi2rx,max96712 videodev 258048 8 v4l2_async,v4l2_fwnode,j721e_csi2rx,videobuf2_v4l2,cdns_csi2rx,max96712,v4l2_mem2mem,wave5 mc 61440 8 v4l2_async,videodev,j721e_csi2rx,videobuf2_v4l2,cdns_csi2rx,videobuf2_common,max96712,v4l2_mem2mem $ media-ctl -p Media controller API version 6.6.32 Media device information ------------------------ driver j721e-csi2rx model TI-CSI2RX serial bus info platform:30102000.ticsi2rx hw revision 0x1 driver version 6.6.32 Device topology - entity 1: 30102000.ticsi2rx (7 pads, 7 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev0 routes: 0/0 -> 1/0 [ACTIVE] pad0: Sink [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range] <- "cdns_csi2rx.30101000.csi-bridge":1 [ENABLED,IMMUTABLE] pad1: Source [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range] -> "30102000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE] pad2: Source -> "30102000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE] pad3: Source -> "30102000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE] pad4: Source -> "30102000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE] pad5: Source -> "30102000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE] pad6: Source -> "30102000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE] - entity 9: cdns_csi2rx.30101000.csi-bridge (5 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev1 routes: 0/0 -> 1/0 [ACTIVE] pad0: Sink [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range] <- "max96712 1-0027":0 [ENABLED,IMMUTABLE] pad1: Source [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range] -> "30102000.ticsi2rx":0 [ENABLED,IMMUTABLE] pad2: Source pad3: Source pad4: Source - entity 15: max96712 1-0027 (1 pad, 1 link, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev2 pad0: Source [stream:0 fmt:RGB888_1X24/1920x1080 field:none] -> "cdns_csi2rx.30101000.csi-bridge":0 [ENABLED,IMMUTABLE] - entity 21: 30102000.ticsi2rx context 0 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video2 pad0: Sink <- "30102000.ticsi2rx":1 [ENABLED,IMMUTABLE] - entity 27: 30102000.ticsi2rx context 1 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video3 pad0: Sink <- "30102000.ticsi2rx":2 [ENABLED,IMMUTABLE] - entity 33: 30102000.ticsi2rx context 2 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video4 pad0: Sink <- "30102000.ticsi2rx":3 [ENABLED,IMMUTABLE] - entity 39: 30102000.ticsi2rx context 3 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video5 pad0: Sink <- "30102000.ticsi2rx":4 [ENABLED,IMMUTABLE] - entity 45: 30102000.ticsi2rx context 4 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video6 pad0: Sink <- "30102000.ticsi2rx":5 [ENABLED,IMMUTABLE] - entity 51: 30102000.ticsi2rx context 5 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video7 pad0: Sink <- "30102000.ticsi2rx":6 [ENABLED,IMMUTABLE]
示波器测量可以确认 解串器 此时已发送图像数据。
当我继续执行捕获原始帧命令时、收到一条错误消息:找不到传感器
$ LIBCAMERA_LOG_LEVELS=*:DEBUG cam -c1 --stream width=640,height=480,pixelformat=UYVY -C20 [5:28:22.165815510] [1384] DEBUG IPAModule ipa_module.cpp:334 ipa_rkisp1.so: IPA module /usr/lib/libcamera/ipa_rkisp1.so is signed [5:28:22.166152500] [1384] DEBUG IPAManager ipa_manager.cpp:245 Loaded IPA module '/usr/lib/libcamera/ipa_rkisp1.so' [5:28:22.166392220] [1384] DEBUG IPAModule ipa_module.cpp:334 ipa_rpi_vc4.so: IPA module /usr/lib/libcamera/ipa_rpi_vc4.so is signed [5:28:22.166492085] [1384] DEBUG IPAManager ipa_manager.cpp:245 Loaded IPA module '/usr/lib/libcamera/ipa_rpi_vc4.so' [5:28:22.166631620] [1384] INFO Camera camera_manager.cpp:284 libcamera v0.2.0+dirty (2024-08-19T13:39:16+00:00) [5:28:22.167048720] [1385] DEBUG Camera camera_manager.cpp:69 Starting camera manager [5:28:22.180743400] [1385] DEBUG DeviceEnumerator device_enumerator.cpp:230 New media device "j721e-csi2rx" created from /dev/media0 [5:28:22.181584125] [1385] DEBUG DeviceEnumerator device_enumerator_udev.cpp:96 Defer media device /dev/media0 due to 7 missing dependencies [5:28:22.185222680] [1385] DEBUG DeviceEnumerator device_enumerator_udev.cpp:322 All dependencies for media device /dev/media0 found [5:28:22.185301070] [1385] DEBUG DeviceEnumerator device_enumerator.cpp:258 Added device /dev/media0: j721e-csi2rx [5:28:22.186494685] [1385] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerISI' [5:28:22.186635085] [1385] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerRkISP1' [5:28:22.186725140] [1385] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerVc4' [5:28:22.186778740] [1385] DEBUG RPI vc4.cpp:179 Unable to acquire a Unicam instance [5:28:22.186801965] [1385] DEBUG RPI vc4.cpp:179 Unable to acquire a Unicam instance [5:28:22.186824330] [1385] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'SimplePipelineHandler' [5:28:22.186854935] [1385] DEBUG DeviceEnumerator device_enumerator.cpp:318 Successful match for media device "j721e-csi2rx" [5:28:22.186930735] [1385] ERROR SimplePipeline simple.cpp:1424 No sensor found [5:28:22.186964820] [1385] DEBUG Camera camera_manager.cpp:113 Found registered pipeline handler 'PipelineHandlerUVC' Camera 1 not found Failed to create camera session
相关 DTS 文件如下。 您能否帮助确认此错误的原因?
&main_i2c1 { #address-cells = <1>; #size-cells = <0>; status = "okay"; camera@27 { compatible = "maxim,max96712"; reg = <0x27>; clocks = <&clk_max96712_fixed>; clock-names = "xclk"; port { csi2_cam0: endpoint { remote-endpoint = <&csi2rx0_in_sensor>; #link-frequencies = /bits/ 64 <456000000>; clock-lanes = <0>; data-lanes = <1 2 3 4>; }; }; }; }; &cdns_csi2rx0 { ports { #address-cells = <1>; #size-cells = <0>; csi0_port0: port@0 { reg = <0>; status = "okay"; csi2rx0_in_sensor: endpoint { remote-endpoint = <&csi2_cam0>; bus-type = <4>; /* CSI2 DPHY. */ clock-lanes = <0>; data-lanes = <1 2 3 4>; }; }; }; }; &ti_csi2rx0 { status = "okay"; }; &dphy0 { status = "okay"; };
您好!
您的"c4l2-ctl --list-devices"显示什么? 您能否尝试使用 yavta 进行捕获、看看这是否有效?
此致、
建中
您好!
这是 使用 v4l2-ctl 和 yavta 测试的日志。
$ v4l2-ctl --list-devices j721e-csi2rx (platform:30102000.ticsi2rx): /dev/video2 /dev/video3 /dev/video4 /dev/video5 /dev/video6 /dev/video7 /dev/media0 wave5-dec (platform:30210000.video-codec): /dev/video0 /dev/video1 $ v4l2-ctl -d2 --stream-mmap -v width=640,height=480,pixelformat=UYVY VIDIOC_STREAMON returned -1 (Broken pipe) $ yavta -s 640x480 -f UYVY /dev/video2 -c20 Device /dev/video2 opened. Device `j721e-csi2rx' on `platform:30102000.ticsi2rx' (driver 'j721e-csi2rx') supports video, capture, without mplanes. Video format set: UYVY (59565955) 640x480 (stride 1280) field none buffer size 614400 Video format: UYVY (59565955) 640x480 (stride 1280) field none buffer size 614400 8 buffers requested. length: 614400 offset: 0 timestamp type/source: mono/EoF Buffer 0/0 mapped at address 0xffffa13ca000. length: 614400 offset: 614400 timestamp type/source: mono/EoF Buffer 1/0 mapped at address 0xffffa1334000. length: 614400 offset: 1228800 timestamp type/source: mono/EoF Buffer 2/0 mapped at address 0xffffa129e000. length: 614400 offset: 1843200 timestamp type/source: mono/EoF Buffer 3/0 mapped at address 0xffffa1208000. length: 614400 offset: 2457600 timestamp type/source: mono/EoF Buffer 4/0 mapped at address 0xffffa1172000. length: 614400 offset: 3072000 timestamp type/source: mono/EoF Buffer 5/0 mapped at address 0xffffa10dc000. length: 614400 offset: 3686400 timestamp type/source: mono/EoF Buffer 6/0 mapped at address 0xffffa1046000. length: 614400 offset: 4300800 timestamp type/source: mono/EoF Buffer 7/0 mapped at address 0xffffa0fb0000. Unable to start streaming: Broken pipe (32). 8 buffers released.
尊敬的建中:
需要您对此问题给予高优先级当您回到办公室时、客户需要尽快将软件交付给汽车 OEM。
BR、
Biao
Cheng Nu、您好!
您的"v4l2-ctl --list-devices"看起来正常。
一些问题和建议:
1.为什么设备树的链路频率行中有"#"?
#link-frequencies =/bits/ 64 <456000000>;
2. 从"meida-ctl -p"的输出来看、"cdns_csi2rx.30101000.csi-bridge"和"max96712 1-0027"的格式不匹配。 请参阅 此常见问题解答 、了解如何配置媒体管道格式。
3.是否可以在运行 yavta 命令时使用 devmem2来检查这些寄存器?
此致、
建中
您好、建中:
在驱动程序中定义了链路频率、我将在设备树中删除链路频率行。
2.我 修改了介质管道格式,但仍然 不起作用。
$ media-ctl -p Media controller API version 6.6.32 Media device information ------------------------ driver j721e-csi2rx model TI-CSI2RX serial bus info platform:30102000.ticsi2rx hw revision 0x1 driver version 6.6.32 Device topology - entity 1: 30102000.ticsi2rx (7 pads, 7 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev0 routes: 0/0 -> 1/0 [ACTIVE] pad0: Sink [stream:0 fmt:UYVY8_1X16/1920x1536 field:none] <- "cdns_csi2rx.30101000.csi-bridge":1 [ENABLED,IMMUTABLE] pad1: Source [stream:0 fmt:UYVY8_1X16/1920x1536 field:none] -> "30102000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE] pad2: Source -> "30102000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE] pad3: Source -> "30102000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE] pad4: Source -> "30102000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE] pad5: Source -> "30102000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE] pad6: Source -> "30102000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE] - entity 9: cdns_csi2rx.30101000.csi-bridge (5 pads, 2 links, 1 route) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev1 routes: 0/0 -> 1/0 [ACTIVE] pad0: Sink [stream:0 fmt:UYVY8_1X16/1920x1536 field:none] <- "max96712 1-0027":0 [ENABLED,IMMUTABLE] pad1: Source [stream:0 fmt:UYVY8_1X16/1920x1536 field:none] -> "30102000.ticsi2rx":0 [ENABLED,IMMUTABLE] pad2: Source pad3: Source pad4: Source - entity 15: max96712 1-0027 (1 pad, 1 link, 0 routes) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev2 pad0: Source [stream:0 fmt:UYVY8_1X16/1920x1536 field:none] -> "cdns_csi2rx.30101000.csi-bridge":0 [ENABLED,IMMUTABLE] - entity 21: 30102000.ticsi2rx context 0 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video2 pad0: Sink <- "30102000.ticsi2rx":1 [ENABLED,IMMUTABLE] - entity 27: 30102000.ticsi2rx context 1 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video3 pad0: Sink <- "30102000.ticsi2rx":2 [ENABLED,IMMUTABLE] - entity 33: 30102000.ticsi2rx context 2 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video4 pad0: Sink <- "30102000.ticsi2rx":3 [ENABLED,IMMUTABLE] - entity 39: 30102000.ticsi2rx context 3 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video5 pad0: Sink <- "30102000.ticsi2rx":4 [ENABLED,IMMUTABLE] - entity 45: 30102000.ticsi2rx context 4 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video6 pad0: Sink <- "30102000.ticsi2rx":5 [ENABLED,IMMUTABLE] - entity 51: 30102000.ticsi2rx context 5 (1 pad, 1 link) type Node subtype V4L flags 0 device node name /dev/video7 pad0: Sink <- "30102000.ticsi2rx":6 [ENABLED,IMMUTABLE] $ yavta -s 1920x1536 -f UYVY /dev/video2 -c2 Device /dev/video2 opened. Device `j721e-csi2rx' on `platform:30102000.ticsi2rx' (driver 'j721e-csi2rx') supports video, capture, without mplanes. Video format set: UYVY (59565955) 1920x1536 (stride 3840) field none buffer size 5898240 Video format: UYVY (59565955) 1920x1536 (stride 3840) field none buffer size 5898240 8 buffers requested. length: 5898240 offset: 0 timestamp type/source: mono/EoF Buffer 0/0 mapped at address 0xffff7fd80000. length: 5898240 offset: 5898240 timestamp type/source: mono/EoF Buffer 1/0 mapped at address 0xffff7f7e0000. length: 5898240 offset: 11796480 timestamp type/source: mono/EoF Buffer 2/0 mapped at address 0xffff7f240000. length: 5898240 offset: 17694720 timestamp type/source: mono/EoF Buffer 3/0 mapped at address 0xffff7eca0000. length: 5898240 offset: 23592960 timestamp type/source: mono/EoF Buffer 4/0 mapped at address 0xffff7e700000. length: 5898240 offset: 29491200 timestamp type/source: mono/EoF Buffer 5/0 mapped at address 0xffff7e160000. length: 5898240 offset: 35389440 timestamp type/source: mono/EoF Buffer 6/0 mapped at address 0xffff7dbc0000. length: 5898240 offset: 41287680 timestamp type/source: mono/EoF Buffer 7/0 mapped at address 0xffff7d620000.
这是 寄存器值。 您可以帮助检查它吗?
devmem2 0x30101020 w /dev/mem opened. Memory mapped at address 0xffff7ffe6000. Read at address 0x30101020 (0xffff7ffe6020): 0x00000000 $ devmem2 0x30101104 w /dev/mem opened. Memory mapped at address 0xffffa3a1b000. Read at address 0x30101104 (0xffffa3a1b104): 0x80000111 $ devmem2 0x30111000 w /dev/mem opened. Memory mapped at address 0xffff97dc7000. Read at address 0x30111000 (0xffff97dc7000): 0x40800000
谢谢!
Cheng Nu
您好、建中:
在我更改了 max96712的驱动程序后、我现在可以捕获图像。 但图像似乎异常,如下图所示。
$ yavta -s 1920x1536 -f UYVY /dev/video2 -c20 -F#.uyvy Device /dev/video2 opened. Device `j721e-csi2rx' on `platform:30102000.ticsi2rx' (driver 'j721e-csi2rx') supports video, capture, without mplanes. Video format set: UYVY (59565955) 1920x1536 (stride 3840) field none buffer size 5898240 Video format: UYVY (59565955) 1920x1536 (stride 3840) field none buffer size 5898240 8 buffers requested. length: 5898240 offset: 0 timestamp type/source: mono/EoF Buf[ 640.925244] max96712 1-0027: s_stream true fer 0/0 mapped at address 0xffffa01f0000. length: 5898240 offset: 5898240 timestamp type/source: mono/EoF Buffer 1/0 mapped at address 0xffff9fc50000. length: 5898240 offset: 11796480 timestamp type/source: mono/EoF Buffer 2/0 mapped at address 0xffff9f6b0000. length: 5898240 offset: 17694720 timestamp type/source: mono/EoF Buffer 3/0 mapped at address 0xffff9f110000. length: 5898240 offset: 23592960 timestamp type/source: mono/EoF Buffer 4/0 mapped at address 0xffff9eb70000. length: 5898240 offset: 29491200 timestamp type/source: mono/EoF Buffer 5/0 mapped at address 0xffff9e5d0000. length: 5898240 offset: 35389440 timestamp type/source: mono/EoF Buffer 6/0 mapped at address 0xffff9e030000. length: 5898240 offset: 41287680 timestamp type/source: mono/EoF Buffer 7/0 mapped at address 0xffff9da90000. 0 (0) [-] any 0 5898240 B 642.400161 642.400208 0.605 fps ts mono/EoF 1 (1) [-] any 1 5898240 B 643.711627 643.711669 0.763 fps ts mono/EoF 2 (2) [-] any 2 5898240 B 665.611989 665.612037 0.046 fps ts mono/EoF 3 (3) [-] any 3 5898240 B 665.866927 665.866973 3.923 fps ts mono/EoF 4 (4) [-] any 4 5898240 B 669.178686 669.178737 0.302 fps ts mono/EoF 5 (5) [-] any 5 5898240 B 676.500780 676.500829 0.137 fps ts mono/EoF 6 (6) [-] any 6 5898240 B 676.612162 676.620227 8.978 fps ts mono/EoF 7 (7) [-] any 7 5898240 B 711.530218 711.530275 0.029 fps ts mono/EoF 8 (0) [-] any 8 5898240 B 712.504567 712.504605 1.026 fps ts mono/EoF 9 (1) [-] any 9 5898240 B 713.793573 713.793616 0.776 fps ts mono/EoF 10 (2) [-] any 10 5898240 B 723.561606 723.561658 0.102 fps ts mono/EoF 11 (3) [-] any 11 5898240 B 741.471081 741.471136 0.056 fps ts mono/EoF 12 (4) [-] any 12 5898240 B 747.979442 747.979493 0.154 fps ts mono/EoF 13 (5) [-] any 13 5898240 B 766.582051 766.582098 0.054 fps ts mono/EoF 14 (6) [-] any 14 5898240 B 768.813624 768.813669 0.448 fps ts mono/EoF 15 (7) [-] any 15 5898240 B 769.837988 769.838024 0.976 fps ts mono/EoF 16 (0) [-] any 16 5898240 B 770.380320 770.380351 1.844 fps ts mono/EoF 17 (1) [-] any 17 5898240 B 785.136490 785.136539 0.068 fps ts mono/EoF 18 (2) [-] any 18 5898240 B 789.547291 789.547336 0.227 fps ts mono/EoF 19 (3) [-] any 19 5898240 B 789.780626 789.780663 4.286 fps ts mono/EoF [ 790.084523] max96712 1-0027: s_stream false Captured 20 frames in 149.033627 seconds (0.134198 fps, 791531.426121 B/s). 8 buffers released.
实际上、解串器 max96712通过四个虚拟通道传输来自四个摄像头的图像数据。
如何修改设备树以完成四摄像头配置? 您能否提供示例 DTS?
谢谢!
Cheng Nu
尊敬的 Cheng Nu:
请参阅 ds90ub960驱动程序和 multi-IMX390设备树以获取参考:
此致、
建中
但这四个摄像头不需要控制,因此我只为解串器实现了驱动程序。
您的意思是摄像头不是由 AM62A 控制、而是可以自行开始流式传输?
我修改了 ub960、ub953和 imx219的驱动程序以满足我的需要。
您使用的 SerDes 与 ub960/ub953不同。 确保驱动程序将正确的值写入正确的寄存器。
[quote userid="623005" url="~/support/processors-group/processors/f/processors-forum/1413138/am62p-capturing-images-with-the-v4l2-application-failed 示波器测量可确认 解串器 此时已发送图像数据。如何确保解串器发送的图像数据有效? 如何将数据从传感器发送到解串器? 您能否验证它是否有效?
是否可以使用 IMX219或 OV5640和您的 SerDes 进行概念验证? 我们知道 AM62P 支持 IMX219和 OV5640。
此致、
建中
您好、建中:
我将验证 解串器发送的图像数据的有效性。
另外、 解串器 MAX96712的数据速率为2Gbps/通道、这是 Maxim 建议的数据速率、因为需要发送4个通道的3M 图像数据。
将 cdns_csi2rx0的链路频率更改为1000000000是否合适?
顺便说一句,你可以帮助提供一种方法来打开 mipi 偏斜?
谢谢!
Cheng Nu
您好、建中:
很高兴了解最新进展情况。
我尝试只连接三个摄像头,发现我可以通过 yavta 从三个摄像头捕捉正确的图像数据。
因此、我认为问题在于 cdns_csi2rx0的数据速率 配置不正确。
您能否帮助确认如何配置2Gbps/通道 或适当的速率?
我们的图像格式为1920x1536@30fps YUV422-8位。
谢谢!
Cheng Nu
Cheng Nu、您好!
是否可以将 cdns_csi2rx0的链路频率更改为1000000000? [报价]我认为您不需要将链路频率设置为这么高。 公式为:link_freq = bits_per_sample * pixel_rate / 2 / nr_of_Lanes。
在您的用例中、 如果您使用4个通道、则 link-freq = 16x1920x1536x30 / 2 / 4 ~= 177MHz。
您当前使用的链路频率是多少?
我尝试仅连接三台摄像机、发现我可以通过 yavta 从三台摄像机捕捉正确的图像数据。是否确定是链路频率问题? 如果您连接所有摄像机、那么4个摄像机中的每一个都只能使用一个摄像机进行拍摄吗?
此致、
建中
[/quote]
您好、建中
您当前使用的链接频率是多少
我当前正在尝试使用以下两种链路频率、但结果似乎相同、因此我不知道我的更改是否可行。
是的、我使用4个通道。 但需要注意的是、四个摄像头的图像数据是同时传输的、因此结果需要乘以4。
如果您连接了所有摄像机、那么4台摄像机中的每台只能用一台摄像机进行拍摄吗?
如果我连接四台相机,我拍摄的图像都异常,就像几天前发布的一样。
所以我想尝试更改链路频率以对其进行测试。
您能否帮助确认修改链接频率和打开 mipi 偏斜的方法?
谢谢!
Cheng Nu
感谢您的纠正。 你是对的。 它 ~为 link-freq = 16x1920x1536x30x4 / 2 / 4 μ s = 708MHz。 因此800MHz 应该没有问题。
在 TI 的 SDK 中、链路频率在此 DTS 中指定: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62a7-sk-fusion.dtso?h=ti-linux-6.6.y
CSI 偏差校准在以下位置完成: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/media/i2c/ds90ub960.c?h=ti-linux-6.6.y#n1757。
您可以在此函数中添加一些调试文件以验证配置的链接频率: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/media/platform/cadence/cdns-csi2rx.c?h=ti-linux-6.6.y#n193。
此致、
建中