Message ID | 20220113205150.6533-1-laurent.pinchart+renesas@ideasonboard.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 1fe6ae4e82628c8f2bb164d3ab92ede88b6d376e |
Delegated to: | Kieran Bingham |
Headers | show |
Series | media: i2c: max9286: Implement media entity .link_validate() operation | expand |
Hi Laurent, On Thu, Jan 13, 2022 at 10:51:50PM +0200, Laurent Pinchart wrote: > The MAX9286 has sink pads, so it should implement .link_validate(). Do > so. > > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Indeed Reviewed-by: Jacopo Mondi <jacopo+renesas@jmondi.org> Thanks j > --- > drivers/media/i2c/max9286.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/media/i2c/max9286.c b/drivers/media/i2c/max9286.c > index eb2b8e42335b..b4885d3b3059 100644 > --- a/drivers/media/i2c/max9286.c > +++ b/drivers/media/i2c/max9286.c > @@ -846,6 +846,10 @@ static const struct v4l2_subdev_internal_ops max9286_subdev_internal_ops = { > .open = max9286_open, > }; > > +static const struct media_entity_operations max9286_media_ops = { > + .link_validate = v4l2_subdev_link_validate > +}; > + > static int max9286_s_ctrl(struct v4l2_ctrl *ctrl) > { > switch (ctrl->id) { > @@ -895,6 +899,7 @@ static int max9286_v4l2_register(struct max9286_priv *priv) > goto err_async; > > priv->sd.entity.function = MEDIA_ENT_F_VID_IF_BRIDGE; > + priv->sd.entity.ops = &max9286_media_ops; > > priv->pads[MAX9286_SRC_PAD].flags = MEDIA_PAD_FL_SOURCE; > for (i = 0; i < MAX9286_SRC_PAD; i++) > -- > Regards, > > Laurent Pinchart >
Hi Laurent, Quoting Laurent Pinchart (2022-01-13 20:51:50) > The MAX9286 has sink pads, so it should implement .link_validate(). Do > so. > I hope none of my scripts got by working because of the lack of this check ;-) But I agree it should be added. Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> I'll aim to test it next time I boot up the Salvator-X or Eagle. -- Kieran > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > --- > drivers/media/i2c/max9286.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/media/i2c/max9286.c b/drivers/media/i2c/max9286.c > index eb2b8e42335b..b4885d3b3059 100644 > --- a/drivers/media/i2c/max9286.c > +++ b/drivers/media/i2c/max9286.c > @@ -846,6 +846,10 @@ static const struct v4l2_subdev_internal_ops max9286_subdev_internal_ops = { > .open = max9286_open, > }; > > +static const struct media_entity_operations max9286_media_ops = { > + .link_validate = v4l2_subdev_link_validate > +}; > + > static int max9286_s_ctrl(struct v4l2_ctrl *ctrl) > { > switch (ctrl->id) { > @@ -895,6 +899,7 @@ static int max9286_v4l2_register(struct max9286_priv *priv) > goto err_async; > > priv->sd.entity.function = MEDIA_ENT_F_VID_IF_BRIDGE; > + priv->sd.entity.ops = &max9286_media_ops; > > priv->pads[MAX9286_SRC_PAD].flags = MEDIA_PAD_FL_SOURCE; > for (i = 0; i < MAX9286_SRC_PAD; i++) > -- > Regards, > > Laurent Pinchart >
diff --git a/drivers/media/i2c/max9286.c b/drivers/media/i2c/max9286.c index eb2b8e42335b..b4885d3b3059 100644 --- a/drivers/media/i2c/max9286.c +++ b/drivers/media/i2c/max9286.c @@ -846,6 +846,10 @@ static const struct v4l2_subdev_internal_ops max9286_subdev_internal_ops = { .open = max9286_open, }; +static const struct media_entity_operations max9286_media_ops = { + .link_validate = v4l2_subdev_link_validate +}; + static int max9286_s_ctrl(struct v4l2_ctrl *ctrl) { switch (ctrl->id) { @@ -895,6 +899,7 @@ static int max9286_v4l2_register(struct max9286_priv *priv) goto err_async; priv->sd.entity.function = MEDIA_ENT_F_VID_IF_BRIDGE; + priv->sd.entity.ops = &max9286_media_ops; priv->pads[MAX9286_SRC_PAD].flags = MEDIA_PAD_FL_SOURCE; for (i = 0; i < MAX9286_SRC_PAD; i++)
The MAX9286 has sink pads, so it should implement .link_validate(). Do so. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> --- drivers/media/i2c/max9286.c | 5 +++++ 1 file changed, 5 insertions(+)