NXP MCU 技术论坛
直播中

石正厚

7年用户 1091经验值
私信 关注
[问答]

ISP1仅在ISP 0启用时工作为什么?

我有两个独立的设置

设置 1:

  • 巴斯勒 -> MIPI0 -> ISP0
  • mt9034 -> MIPI1 -> ISI1
设置 2:

  • mt9034 -> MIPI0 -> ISI0
  • 巴斯勒 -> MIPI1 -> ISP1

mt9034 只是任何相机的替代品,与我无关。


v4l2-ctl -d /dev/video3 --stream-mmap=4 --verbose
VIDIOC_QUERYCAP: ok
                VIDIOC_REQBUFS returned 0 (Success)
                VIDIOC_QUERYBUF returned 0 (Success)
                VIDIOC_QUERYBUF returned 0 (Success)
                VIDIOC_QUERYBUF returned 0 (Success)
                VIDIOC_QUERYBUF returned 0 (Success)
                VIDIOC_QBUF returned 0 (Success)
                VIDIOC_QBUF returned 0 (Success)
                VIDIOC_QBUF returned 0 (Success)
                VIDIOC_QBUF returned 0 (Success)
                VIDIOC_STREAMON returned 0 (Success)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 1512.118705 delta: 1512118.705 ms (ts-monotonic, ts-src-eof)

但是当我尝试使用设置 2 进行完全相同的设置时,我立即收到错误消息

v4l2-ctl -d /dev/video3 --stream-mmap=4 --verbose
VIDIOC_QUERYCAP: ok
                VIDIOC_REQBUFS returned -1 (Resource temporarily unavailable)



设置 2 的媒体管道和 v4l2-ctl 输出:

# media-ctl -p
Media controller API version 5.10.72

Media device information
------------------------
driver          mxc-md
model           FSL Capture Media Device
serial
bus info
hw revision     0x0
driver version  5.10.72

Device topology
- entity 1: mxc_isi.0 (16 pads, 2 links)
            type V4L2 subdev subtype Unknown flags 0
        pad0: Sink
                <- "mxc-mipi-csi2.0":4 [ENABLED]
        pad1: Sink
        pad2: Sink
        pad3: Sink
        pad4: Sink
        pad5: Sink
        pad6: Sink
        pad7: Sink
        pad8: Sink
        pad9: Sink
        pad10: Sink
        pad11: Sink
        pad12: Source
                -> "mxc_isi.0.capture":0 [ENABLED]
        pad13: Source
        pad14: Source
        pad15: Sink

- entity 18: mxc_isi.0.capture (1 pad, 1 link)
             type Node subtype V4L flags 0
             device node name /dev/video2
        pad0: Sink
                <- "mxc_isi.0":12 [ENABLED]

- entity 22: mxc-mipi-csi2.0 (8 pads, 2 links)
             type Node subtype V4L flags 0
             device node name /dev/v4l-subdev0
        pad0: Sink
                <- "mt9034 4-0010":0 [ENABLED,IMMUTABLE]
        pad1: Sink
        pad2: Sink
        pad3: Sink
        pad4: Source
                -> "mxc_isi.0":0 [ENABLED]
        pad5: Source
        pad6: Source
        pad7: Source

- entity 31: mxc-mipi-csi2.1 (8 pads, 1 link)
             type Node subtype V4L flags 0
             device node name /dev/v4l-subdev1
        pad0: Sink
                <- "basler-camera-vvcam 5-0036":0 [ENABLED,IMMUTABLE]
        pad1: Sink
        pad2: Sink
        pad3: Sink
        pad4: Source
        pad5: Source
        pad6: Source
        pad7: Source

- entity 40: basler-camera-vvcam 5-0036 (1 pad, 1 link)
             type V4L2 subdev subtype Sensor flags 0
             device node name /dev/v4l-subdev2
        pad0: Source
                -> "mxc-mipi-csi2.1":0 [ENABLED,IMMUTABLE]

- entity 42: mt9034 4-0010 (1 pad, 1 link)
             type V4L2 subdev subtype Sensor flags 0
             device node name /dev/v4l-subdev3
        pad0: Source
                [fmt:UYVY8_2X8/640x720 field:none colorspace:srgb
                 crop:(0,0)/640x720]
                -> "mxc-mipi-csi2.0":0 [ENABLED,IMMUTABLE]
                                
# media-ctl -p -d /dev/media1
Media controller API version 5.10.72

Media device information
------------------------
driver          vvcam-video
model           viv_media
serial
bus info
hw revision     0x0
driver version  5.10.72

Device topology
- entity 1: viv_v4l21 (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video3
        pad0: Sink
                <- "vvcam-isp.1":0 [ENABLED]

- entity 5: vvcam-isp.1 (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/v4l-subdev4
        pad0: Source
                -> "viv_v4l21":0 [ENABLED]

- entity 7: vvcam-dwe.1 (2 pads, 0 link)
            type Node subtype V4L flags 0
            device node name /dev/v4l-subdev5
        pad0: Source
        pad1: Sink
               

# v4l2-ctl -d /dev/video3 -D
Driver Info:
        Driver name      : viv_v4l2_device
        Card type        : VIV
        Bus info         : platform:viv1
        Driver version   : 5.10.72
        Capabilities     : 0x84200001
                Video Capture
                Streaming
                Extended Pix Format
                Device Capabilities
        Device Caps      : 0x04200001
                Video Capture
                Streaming
                Extended Pix Format
Media Driver Info:
        Driver name      : vvcam-video
        Model            : viv_media
        Serial           :
        Bus info         :
        Media version    : 5.10.72
        Hardware revision: 0x00000000 (0)
        Driver version   : 5.10.72
Interface Info:
        ID               : 0x03000003
        Type             : V4L Video
Entity Info:
        ID               : 0x00000001 (1)
        Name             : viv_v4l21
        Function         : V4L2 I/O
        Pad 0x01000002   : 0: Sink, Must Connect
          Link 0x0200000a: from remote pad 0x1000009 of entity 'vvcam-isp.1': Data, Enabled
                  
# v4l2-ctl --list-devices
[  349.939100] enter isp_mi_stop
():
        /dev/v4l-subdev0

():
        /dev/v4l-subdev1
        /dev/v4l-subdev4
        /dev/v4l-subdev5

(csi1):
        /dev/v4l-subdev2

mxc-isi-cap (platform:32e00000.isi:cap_devic):
        /dev/video2

FSL Capture Media Device (platform:mxc-md):
        /dev/media0

VIV (platform:viv1):
        /dev/video3

vsi_v4l2dec (platform:vsi_v4l2dec):
        /dev/video1

vsi_v4l2enc (platform:vsi_v4l2enc):
        /dev/video0

viv_media (platform:vvcam-video):
        /dev/media1




我确实在 dmesg 中注意到两种设置之间的差异。当我尝试在设置 2 期间使用上面的 v4l2 命令进行流式传输时,我每次都会看到此输出。它没有出现在设置 1 中。




[ 1481.632505] viv_post_event: unsubscribed event id =2 type=0x08002000
[ 1482.584451] viv_post_event: unsubscribed event id =14 type=0x08002000
[ 1482.748439] viv_post_event: unsubscribed event id =14 type=0x08002000
[ 1482.924447] viv_post_event: unsubscribed event id =1 type=0x08002000




据我所知,isp 已成功启动




Oct 26 18:24:35 ucm-imx8m-plus systemd[1]: Started ISP i.MX 8Mplus daemon.
Oct 26 18:24:35 ucm-imx8m-plus start_isp.sh[1458]: Starting isp_media_server
Oct 26 18:24:35 ucm-imx8m-plus start_isp.sh[1458]: DAA3840_30MC_266 on ISP 1
Oct 26 18:24:35 ucm-imx8m-plus start_isp.sh[1458]: RUN_SCRIPT=/opt/imx8-isp/bin/run.sh
Oct 26 18:24:35 ucm-imx8m-plus start_isp.sh[1458]: RUN_SCRIPT_PATH=/opt/imx8-isp/bin
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Apply configuration  DAA3840_30MC_266...
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Loading module basler-camera-driver-vvcam ...
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: basler_camera_driver_vvcam
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1538]: basler_camera_driver_vvcam    20480  0
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: basler-camera-driver-vvcam already loaded.
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Loading module imx8-media-dev ...
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: imx8_media_dev
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Loaded /lib/modules/5.10.72/kernel/drivers/staging/media/imx/imx8-media-dev.ko
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Loading module vvcam-video ...
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: vvcam_video
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1562]: vvcam_video            36864  0
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: vvcam-video already loaded.
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Loading module vvcam-dwe ...
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: vvcam_dwe
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1567]: vvcam_dwe              28672  1
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: vvcam-dwe already loaded.
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Loading module vvcam-isp ...
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: vvcam_isp
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1572]: vvcam_isp              65536  1
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: vvcam-isp already loaded.
Oct 26 18:24:36 ucm-imx8m-plus start_isp.sh[1458]: Starting isp_media_server with configuration CAMERA1

更多回帖

发帖
×
20
完善资料,
赚取积分