Hi, On Sat, May 26, 2018 at 08:25:10PM +0300, Laurent Pinchart wrote: > When a DSS output is (dis)connected the omapdss_output_(un)set_device() > function performs a sanity check to ensure that the output isn't already > (dis)connected. The check is unnecessary as those situations should > never happen, but can nonetheless be useful to catch driver bugs. To > prepare for removal of the omapdss_output_(un)set_device() functions > move the connection check to the omapdss_device_connect() function. The > omapdss_device_disconnect() already contains a corresponding check. > > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- Reviewed-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxxxx> -- Sebastian > drivers/gpu/drm/omapdrm/dss/base.c | 1 + > drivers/gpu/drm/omapdrm/dss/output.c | 29 ++--------------------------- > 2 files changed, 3 insertions(+), 27 deletions(-) > > diff --git a/drivers/gpu/drm/omapdrm/dss/base.c b/drivers/gpu/drm/omapdrm/dss/base.c > index 7f41c541397b..3afb3d574a7b 100644 > --- a/drivers/gpu/drm/omapdrm/dss/base.c > +++ b/drivers/gpu/drm/omapdrm/dss/base.c > @@ -209,6 +209,7 @@ int omapdss_device_connect(struct dss_device *dss, > } > > if (src) { > + WARN_ON(src->dst); > dst->src = src; > src->dst = dst; > } > diff --git a/drivers/gpu/drm/omapdrm/dss/output.c b/drivers/gpu/drm/omapdrm/dss/output.c > index 2f7a019d059e..96d74218cf91 100644 > --- a/drivers/gpu/drm/omapdrm/dss/output.c > +++ b/drivers/gpu/drm/omapdrm/dss/output.c > @@ -29,61 +29,36 @@ static DEFINE_MUTEX(output_lock); > int omapdss_output_set_device(struct omap_dss_device *out, > struct omap_dss_device *dssdev) > { > - int r; > + int r = 0; > > mutex_lock(&output_lock); > > - if (out->dst) { > - dev_err(out->dev, > - "output already has device %s connected to it\n", > - out->dst->name); > - r = -EINVAL; > - goto err; > - } > - > if (out->output_type != dssdev->type) { > dev_err(out->dev, "output type and display type don't match\n"); > r = -EINVAL; > - goto err; > } > > mutex_unlock(&output_lock); > > - return 0; > -err: > - mutex_unlock(&output_lock); > - > return r; > } > EXPORT_SYMBOL(omapdss_output_set_device); > > int omapdss_output_unset_device(struct omap_dss_device *out) > { > - int r; > + int r = 0; > > mutex_lock(&output_lock); > > - if (!out->dst) { > - dev_err(out->dev, > - "output doesn't have a device connected to it\n"); > - r = -EINVAL; > - goto err; > - } > - > if (out->dst->state != OMAP_DSS_DISPLAY_DISABLED) { > dev_err(out->dev, > "device %s is not disabled, cannot unset device\n", > out->dst->name); > r = -EINVAL; > - goto err; > } > > mutex_unlock(&output_lock); > > - return 0; > -err: > - mutex_unlock(&output_lock); > - > return r; > } > EXPORT_SYMBOL(omapdss_output_unset_device); > -- > Regards, > > Laurent Pinchart > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel