Message ID | 20240822154531.25912-2-laurent.pinchart+renesas@ideasonboard.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | media: v4l2: Improve media link validation | expand |
Hi, On 22/08/2024 18:45, Laurent Pinchart wrote: > The v4l2_subdev_link_validate() function is a helper designed to > validate links whose sink is a subdev. When called on a link whose sink > is a video device, it only prints a warning and returns. As the > microchip-isc driver implements manual validate of the subdev to video > device link, we can just dropp the v4l2_subdev_link_validate() to avoid > the warning. > > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> > --- > .../platform/microchip/microchip-isc-base.c | 19 ++++--------------- > 1 file changed, 4 insertions(+), 15 deletions(-) > > diff --git a/drivers/media/platform/microchip/microchip-isc-base.c b/drivers/media/platform/microchip/microchip-isc-base.c > index f3a5cbacadbe..28e56f6a695d 100644 > --- a/drivers/media/platform/microchip/microchip-isc-base.c > +++ b/drivers/media/platform/microchip/microchip-isc-base.c > @@ -902,8 +902,11 @@ static int isc_set_fmt(struct isc_device *isc, struct v4l2_format *f) > return 0; > } > > -static int isc_validate(struct isc_device *isc) > +static int isc_link_validate(struct media_link *link) > { > + struct video_device *vdev = > + media_entity_to_video_device(link->sink->entity); > + struct isc_device *isc = video_get_drvdata(vdev); > int ret; > int i; > struct isc_format *sd_fmt = NULL; > @@ -1906,20 +1909,6 @@ int microchip_isc_pipeline_init(struct isc_device *isc) > } > EXPORT_SYMBOL_GPL(microchip_isc_pipeline_init); > > -static int isc_link_validate(struct media_link *link) > -{ > - struct video_device *vdev = > - media_entity_to_video_device(link->sink->entity); > - struct isc_device *isc = video_get_drvdata(vdev); > - int ret; > - > - ret = v4l2_subdev_link_validate(link); > - if (ret) > - return ret; > - > - return isc_validate(isc); > -} > - > static const struct media_entity_operations isc_entity_operations = { > .link_validate = isc_link_validate, > }; Reviewed-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com> Tomi
diff --git a/drivers/media/platform/microchip/microchip-isc-base.c b/drivers/media/platform/microchip/microchip-isc-base.c index f3a5cbacadbe..28e56f6a695d 100644 --- a/drivers/media/platform/microchip/microchip-isc-base.c +++ b/drivers/media/platform/microchip/microchip-isc-base.c @@ -902,8 +902,11 @@ static int isc_set_fmt(struct isc_device *isc, struct v4l2_format *f) return 0; } -static int isc_validate(struct isc_device *isc) +static int isc_link_validate(struct media_link *link) { + struct video_device *vdev = + media_entity_to_video_device(link->sink->entity); + struct isc_device *isc = video_get_drvdata(vdev); int ret; int i; struct isc_format *sd_fmt = NULL; @@ -1906,20 +1909,6 @@ int microchip_isc_pipeline_init(struct isc_device *isc) } EXPORT_SYMBOL_GPL(microchip_isc_pipeline_init); -static int isc_link_validate(struct media_link *link) -{ - struct video_device *vdev = - media_entity_to_video_device(link->sink->entity); - struct isc_device *isc = video_get_drvdata(vdev); - int ret; - - ret = v4l2_subdev_link_validate(link); - if (ret) - return ret; - - return isc_validate(isc); -} - static const struct media_entity_operations isc_entity_operations = { .link_validate = isc_link_validate, };
The v4l2_subdev_link_validate() function is a helper designed to validate links whose sink is a subdev. When called on a link whose sink is a video device, it only prints a warning and returns. As the microchip-isc driver implements manual validate of the subdev to video device link, we can just dropp the v4l2_subdev_link_validate() to avoid the warning. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> --- .../platform/microchip/microchip-isc-base.c | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-)