Hi Daniel, Thank you for the patch.
On Friday 17 Jun 2016 09:33:28 Daniel Vetter wrote: > Since > > commit e112e593b215c394c0303dbf0534db0928e87967 > Author: Nicolas Iooss <nicolas.iooss_linux at m4x.org> > Date: Fri Dec 11 11:20:28 2015 +0100 > > drm: use dev_name as default unique name in drm_dev_alloc() > > we're using a reasonable default which should work for everyone. Only > mtk, rcar-du and sun4i are affected, and as kms-only drivers without > any rendering support no one should ever care about the unique name > > v2: Rebase on top of mediatek. > > Cc: Philipp Zabel <p.zabel at pengutronix.de> > Cc: Maxime Ripard <maxime.ripard at free-electrons.com> > Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com> > Cc: Emil Velikov <emil.l.velikov at gmail.com> > Signed-off-by: Daniel Vetter <daniel.vetter at intel.com> Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com> > --- > drivers/gpu/drm/drm_drv.c | 35 +++++++++--------------------- > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 2 -- > drivers/gpu/drm/rcar-du/rcar_du_drv.c | 2 -- > drivers/gpu/drm/sun4i/sun4i_drv.c | 4 ---- > include/drm/drmP.h | 1 - > 5 files changed, 11 insertions(+), 33 deletions(-) > > diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c > index ecba2511ef5a..25f10586a74d 100644 > --- a/drivers/gpu/drm/drm_drv.c > +++ b/drivers/gpu/drm/drm_drv.c > @@ -298,10 +298,9 @@ void drm_minor_release(struct drm_minor *minor) > * callbacks implemented by the driver. The driver then needs to initialize > all * the various subsystems for the drm device like memory management, > vblank * handling, modesetting support and intial output configuration plus > obviously - * initialize all the corresponding hardware bits. An important > part of this is - * also calling drm_dev_set_unique() to set the > userspace-visible unique name of - * this device instance. Finally when > everything is up and running and ready for - * userspace the device > instance can be published using drm_dev_register(). + * initialize all the > corresponding hardware bits. Finally when everything is up + * and running > and ready for userspace the device instance can be published + * using > drm_dev_register(). > * > * There is also deprecated support for initalizing device instances using > * bus-specific helpers and the ->load() callback. But due to > @@ -323,6 +322,14 @@ void drm_minor_release(struct drm_minor *minor) > * dev_priv field of &drm_device. > */ > > +static int drm_dev_set_unique(struct drm_device *dev, const char *name) > +{ > + kfree(dev->unique); > + dev->unique = kstrdup(name, GFP_KERNEL); > + > + return dev->unique ? 0 : -ENOMEM; > +} > + > /** > * drm_put_dev - Unregister and release a DRM device > * @dev: DRM device > @@ -697,26 +704,6 @@ void drm_dev_unregister(struct drm_device *dev) > } > EXPORT_SYMBOL(drm_dev_unregister); > > -/** > - * drm_dev_set_unique - Set the unique name of a DRM device > - * @dev: device of which to set the unique name > - * @name: unique name > - * > - * Sets the unique name of a DRM device using the specified string. Drivers > - * can use this at driver probe time if the unique name of the devices > they - * drive is static. > - * > - * Return: 0 on success or a negative error code on failure. > - */ > -int drm_dev_set_unique(struct drm_device *dev, const char *name) > -{ > - kfree(dev->unique); > - dev->unique = kstrdup(name, GFP_KERNEL); > - > - return dev->unique ? 0 : -ENOMEM; > -} > -EXPORT_SYMBOL(drm_dev_set_unique); > - > /* > * DRM Core > * The DRM core module initializes all global DRM objects and makes them > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > b/drivers/gpu/drm/mediatek/mtk_drm_drv.c index c33bf98c5d5e..04e901a80234 > 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -280,8 +280,6 @@ static int mtk_drm_bind(struct device *dev) > if (!drm) > return -ENOMEM; > > - drm_dev_set_unique(drm, dev_name(dev)); > - > drm->dev_private = private; > private->drm = drm; > > diff --git a/drivers/gpu/drm/rcar-du/rcar_du_drv.c > b/drivers/gpu/drm/rcar-du/rcar_du_drv.c index 48ec4b6e8b26..8784208d8eed > 100644 > --- a/drivers/gpu/drm/rcar-du/rcar_du_drv.c > +++ b/drivers/gpu/drm/rcar-du/rcar_du_drv.c > @@ -320,8 +320,6 @@ static int rcar_du_probe(struct platform_device *pdev) > if (!ddev) > return -ENOMEM; > > - drm_dev_set_unique(ddev, dev_name(&pdev->dev)); > - > rcdu->ddev = ddev; > ddev->dev_private = rcdu; > > diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c > b/drivers/gpu/drm/sun4i/sun4i_drv.c index 68e9d85085fb..5c4b4ad17ad3 100644 > --- a/drivers/gpu/drm/sun4i/sun4i_drv.c > +++ b/drivers/gpu/drm/sun4i/sun4i_drv.c > @@ -135,10 +135,6 @@ static int sun4i_drv_bind(struct device *dev) > if (!drm) > return -ENOMEM; > > - ret = drm_dev_set_unique(drm, dev_name(drm->dev)); > - if (ret) > - goto free_drm; > - > drv = devm_kzalloc(dev, sizeof(*drv), GFP_KERNEL); > if (!drv) { > ret = -ENOMEM; > diff --git a/include/drm/drmP.h b/include/drm/drmP.h > index 62e0e70cb5a2..bd40d7ee5ec5 100644 > --- a/include/drm/drmP.h > +++ b/include/drm/drmP.h > @@ -1073,7 +1073,6 @@ void drm_dev_ref(struct drm_device *dev); > void drm_dev_unref(struct drm_device *dev); > int drm_dev_register(struct drm_device *dev, unsigned long flags); > void drm_dev_unregister(struct drm_device *dev); > -int drm_dev_set_unique(struct drm_device *dev, const char *name); > > struct drm_minor *drm_minor_acquire(unsigned int minor_id); > void drm_minor_release(struct drm_minor *minor); -- Regards, Laurent Pinchart