[Intel-gfx] [PATCH 10/16] drm: Don't call drm_dev_set_unique from platform drivers
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Fri Jun 17 11:12:09 UTC 2016
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
More information about the Intel-gfx
mailing list