Message ID | 1462361133-23887-4-git-send-email-sakari.ailus@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 05/04/2016 01:25 PM, Sakari Ailus wrote: > From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > > The subdev core code currently rely on the subdev open handler to > initialize the file handle's pad configuration, even though subdevs now > have a pad operation dedicated for that purpose. > > As a first step towards migration to init_cfg, call the operation > operation in the subdev core open implementation. Subdevs that are > haven't been moved to init_cfg yet will just continue implementing pad > config initialization in their open handler. > > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Sakari, On Wednesday 04 May 2016 14:25:33 Sakari Ailus wrote: > From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > > The subdev core code currently rely on the subdev open handler to > initialize the file handle's pad configuration, even though subdevs now > have a pad operation dedicated for that purpose. > > As a first step towards migration to init_cfg, call the operation > operation in the subdev core open implementation. Subdevs that are > haven't been moved to init_cfg yet will just continue implementing pad > config initialization in their open handler. > > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > --- > drivers/media/v4l2-core/v4l2-subdev.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/media/v4l2-core/v4l2-subdev.c > b/drivers/media/v4l2-core/v4l2-subdev.c index 224ea60..9cbd011 100644 > --- a/drivers/media/v4l2-core/v4l2-subdev.c > +++ b/drivers/media/v4l2-core/v4l2-subdev.c > @@ -85,6 +85,8 @@ static int subdev_open(struct file *file) > } > #endif > > + v4l2_subdev_call(sd, pad, init_cfg, subdev_fh->pad); > + Given that v4l2_subdev_alloc_pad_config(), called by subdev_fh_init(), already calls the init_cfg operation, is this still needed ? > if (sd->internal_ops && sd->internal_ops->open) { > ret = sd->internal_ops->open(sd, subdev_fh); > if (ret < 0)
Hi Laurent, On Mon, May 09, 2016 at 07:18:11PM +0300, Laurent Pinchart wrote: > Hi Sakari, > > On Wednesday 04 May 2016 14:25:33 Sakari Ailus wrote: > > From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > > > > The subdev core code currently rely on the subdev open handler to > > initialize the file handle's pad configuration, even though subdevs now > > have a pad operation dedicated for that purpose. > > > > As a first step towards migration to init_cfg, call the operation > > operation in the subdev core open implementation. Subdevs that are > > haven't been moved to init_cfg yet will just continue implementing pad > > config initialization in their open handler. > > > > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > > --- > > drivers/media/v4l2-core/v4l2-subdev.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/drivers/media/v4l2-core/v4l2-subdev.c > > b/drivers/media/v4l2-core/v4l2-subdev.c index 224ea60..9cbd011 100644 > > --- a/drivers/media/v4l2-core/v4l2-subdev.c > > +++ b/drivers/media/v4l2-core/v4l2-subdev.c > > @@ -85,6 +85,8 @@ static int subdev_open(struct file *file) > > } > > #endif > > > > + v4l2_subdev_call(sd, pad, init_cfg, subdev_fh->pad); > > + > > Given that v4l2_subdev_alloc_pad_config(), called by subdev_fh_init(), already > calls the init_cfg operation, is this still needed ? It's your patch. ;-) Yeah, after looking at the code, I agree to drop it.
diff --git a/drivers/media/v4l2-core/v4l2-subdev.c b/drivers/media/v4l2-core/v4l2-subdev.c index 224ea60..9cbd011 100644 --- a/drivers/media/v4l2-core/v4l2-subdev.c +++ b/drivers/media/v4l2-core/v4l2-subdev.c @@ -85,6 +85,8 @@ static int subdev_open(struct file *file) } #endif + v4l2_subdev_call(sd, pad, init_cfg, subdev_fh->pad); + if (sd->internal_ops && sd->internal_ops->open) { ret = sd->internal_ops->open(sd, subdev_fh); if (ret < 0)