Hi, Hans and Sakari,

Thanks a lot for the code review, I attached the topology print FYI.

Regards,

Yong
________________________________________
From: Sakari Ailus [sakari.ai...@iki.fi]
Sent: Friday, June 09, 2017 2:20 AM
To: Hans Verkuil
Cc: Zhi, Yong; linux-media@vger.kernel.org; sakari.ai...@linux.intel.com; 
Zheng, Jian Xu; tf...@chromium.org; Mani, Rajmohan; Toivonen, Tuukka
Subject: Re: [PATCH 11/12] intel-ipu3: Add imgu v4l2 driver

Hi Hans,

On Tue, Jun 06, 2017 at 11:08:07AM +0200, Hans Verkuil wrote:
> > +           /* Initialize vdev */
> > +           strlcpy(vdev->name, node->name, sizeof(vdev->name));
> > +           vdev->release = video_device_release_empty;
> > +           vdev->fops = &m2m2->v4l2_file_ops;
> > +           vdev->ioctl_ops = &ipu3_v4l2_ioctl_ops;
> > +           vdev->lock = &node->lock;
> > +           vdev->v4l2_dev = &m2m2->v4l2_dev;
> > +           vdev->queue = &node->vbq;
> > +           vdev->vfl_dir = node->output ? VFL_DIR_TX : VFL_DIR_RX;
>
> Why have two video nodes (one tx, one rx) instead of a single m2m device
> node?
>
> I'm not saying this is wrong, I just like to know the rationale for this
> design.

There are a bunch of outputs from the same input stream. Also the parameters
are needed to process the frame, I think there are two OUTPUT devices and
five CAPTURE devices.

Yong: could you send the media graph of the device, please?

--
Regards,

Sakari Ailus
e-mail: sakari.ai...@iki.fi     XMPP: sai...@retiisi.org.uk
Media controller API version 0.1.0

Media device information
------------------------
driver          ipu3-imgu
model           ipu3-imgu
serial          
bus info        0000:00:05.0
hw revision     0x0
driver version  4.12.0

Device topology
- entity 1: ipu3-imgu:0 (8 pads, 8 links)
            type V4L2 subdev subtype Unknown flags 0
            device node name /dev/v4l-subdev0
        pad0:Sink
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                <- "input":0 [ENABLED,IMMUTABLE]
        pad1:Sink
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                <- "parameters":0 []
        pad2:Source
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                -> "output":0 []
        pad3:Source
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                -> "viewfinder":0 []
        pad4:Source
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                -> "postview":0 []
        pad5:Source
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                -> "3a stat":0 []
        pad6:Source
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                -> "dvs stat":0 []
        pad7:Source
                stream:0[fmt:UYVY2X8/352x288]
                link: 
                -> "lace stat":0 []

- entity 2: input (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video0
        pad0:Source
                link: 
                -> "ipu3-imgu:0":0 [ENABLED,IMMUTABLE]

- entity 3: parameters (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video1
        pad0:Source
                link: 
                -> "ipu3-imgu:0":1 []

- entity 4: output (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video2
        pad0:Sink
                link: 
                <- "ipu3-imgu:0":2 []

- entity 5: viewfinder (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video3
        pad0:Sink
                link: 
                <- "ipu3-imgu:0":3 []

- entity 6: postview (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video4
        pad0:Sink
                link: 
                <- "ipu3-imgu:0":4 []

- entity 7: 3a stat (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video5
        pad0:Sink
                link: 
                <- "ipu3-imgu:0":5 []

- entity 8: dvs stat (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video6
        pad0:Sink
                link: 
                <- "ipu3-imgu:0":6 []

- entity 9: lace stat (1 pad, 1 link)
            type Node subtype V4L flags 0
            device node name /dev/video7
        pad0:Sink
                link: 
                <- "ipu3-imgu:0":7 []


Attachment: imgu-topology.dot
Description: imgu-topology.dot

Reply via email to