drm: Don't call drm_dev_set_unique from platform drivers
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 21 Jun 2016 08:54:16 +0000 (10:54 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 21 Jun 2016 19:43:41 +0000 (21:43 +0200)
Since

commit e112e593b215c394c0303dbf0534db0928e87967
Author: Nicolas Iooss <nicolas.iooss_linux@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@pengutronix.de>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1466499262-18717-5-git-send-email-daniel.vetter@ffwll.ch
drivers/gpu/drm/drm_drv.c
drivers/gpu/drm/mediatek/mtk_drm_drv.c
drivers/gpu/drm/rcar-du/rcar_du_drv.c
drivers/gpu/drm/sun4i/sun4i_drv.c
include/drm/drmP.h

index 147e89e255183e30606f10656a05fb1f18246671..aead9ffcbe29c83f0640963769563947fd6666b3 100644 (file)
@@ -299,10 +299,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
@@ -324,6 +323,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
@@ -742,26 +749,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
index 7ab91f4a200fb50a3f78d02133bf66a748a28367..eebb7d881c2ba88b9b50a309a6c37b7087feb77d 100644 (file)
@@ -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;
 
index 36d390093c925d10744b80d58ae1f642a6cee992..d1c0512e4a9ee5df73b8abecd79dbdb2213d5a90 100644 (file)
@@ -319,8 +319,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;
 
index 68e9d85085fbb769d62f60553c336f18ed72bfca..5c4b4ad17ad30432f12a804a27e4238374128425 100644 (file)
@@ -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;
index 3d9a7824f1119f8af8be814938c6e67c4cc8e66d..fd4e4391aee50a41261baaae0920e39a0858e3fb 100644 (file)
@@ -1080,7 +1080,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);