木子临枫 2023-03-20 17:30 采纳率: 28.6%
浏览 39
已结题

关于zynqmp linux ov5640摄像头

ZYNQMP 使用ov5640摄像头,调用ioct,返回错误-1;

ZYNQMP 硬件描述结构 摄像头MIPI->mipi_csi2_rx_subsyst_0->v_demosaic_0->v_gamma_lut_0->VDMA

root@xilinx-3eg:~# media-ctl -p -d /dev/media0
Media controller API version 5.4.0

Media device information
---[  392.533450] ov5640_get_fmt
---------------------
driver          xilinx-video
model           Xilinx Video Composite Device
serial
bus info
hw revision     0x0
driver version  5.4.0

Device topology
- entity 1: video_cap output 0 (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video0
        pad0: Sink
                <- "80040000.v_gamma_lut":1 [ENABLED]

- entity 5: ov5640 0-003c (1 pad, 1 link)
            type V4L2 subdev subtype Sensor flags 0
            device node name /dev/v4l-subdev0
        pad0: Source
                [fmt:JPEG_1X8/640x480@1/30 field:none colorspace:jpeg xfer:srgb ycbcr:601 quantization:full-range]
                -> "80050000.mipi_csi2_rx_subsystem":1 [ENABLED]

- entity 7: 80050000.mipi_csi2_rx_subsystem (2 pads, 2 links)
            type V4L2 subdev subtype Unknown flags 0
            device node name /dev/v4l-subdev1
        pad0: Source
                [fmt:UYVY8_1X16/1920x1080 field:none colorspace:srgb]
                -> "80060000.v_demosaic":0 [ENABLED]
        pad1: Sink
                [fmt:UYVY8_1X16/1920x1080 field:none colorspace:srgb]
                <- "ov5640 0-003c":0 [ENABLED]

- entity 10: 80060000.v_demosaic (2 pads, 2 links)
             type V4L2 subdev subtype Unknown flags 0
             device node name /dev/v4l-subdev2
        pad0: Sink
                [fmt:SRGGB8_1X8/1280x720 field:none colorspace:srgb]
                <- "80050000.mipi_csi2_rx_subsystem":0 [ENABLED]
        pad1: Source
                [fmt:RBG888_1X24/1280x720 field:none colorspace:srgb]
                -> "80040000.v_gamma_lut":0 [ENABLED]

- entity 13: 80040000.v_gamma_lut (2 pads, 2 links)
             type V4L2 subdev subtype Unknown flags 0
             device node name /dev/v4l-subdev3
        pad0: Sink
                [fmt:RBG888_1X24/1280x720 field:none colorspace:srgb]
                <- "80060000.v_demosaic":1 [ENABLED]
        pad1: Source
                [fmt:RBG888_1X24/1280x720 field:none colorspace:srgb]
                -> "video_cap output 0":0 [ENABLED]

操作

  fd = open(FILE_V4LSUBDEV,O_RDWR);
    if(fd < 0) {
        printf("Error opening\r\n");
        return -1;
    }
  struct v4l2_subdev_format fmt;

  if(-1 == ioctl(fd,VIDIOC_SUBDEV_G_FMT    , &fmt)){
    printf("VIDIOC_SUBDEV_G_FMT fail \r\n");
    close(fd);
    return -1;
  }

ioct返回-1

  • 写回答

2条回答 默认 最新

  • 木子临枫 2023-03-21 11:16
    关注

    问题解决

    struct v4l2_subdev_format fmt;
      fmt.which = 1;
      fmt.pad = 0;
    ```c++
    
    
    

    ```

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月29日
  • 已采纳回答 3月21日
  • 创建了问题 3月20日

悬赏问题

  • ¥15 Pyqt 如何正确的关掉Qthread,并且释放其中的锁?
  • ¥30 网站服务器通过node.js部署了一个项目!前端访问失败
  • ¥15 WPS访问权限不足怎么解决
  • ¥15 java幂等控制问题
  • ¥15 海湾GST-DJ-N500
  • ¥15 氧化掩蔽层与注入条件关系
  • ¥15 Django DRF 如何反序列化得到Python对象类型数据
  • ¥15 多数据源与Hystrix的冲突
  • ¥15 如何在线硕士了解,广告太多,希望有真实接触过的人回答下?(标签-学习|关键词-在线硕士)
  • ¥15 zabbix6.4与frp如何进行联动