drm: Use dev->name as fallback for dev->unique
Lots of arm drivers get this wrong and for most arm boards this is the
right thing actually. And anyway with most loaders you want to chase
sysfs links anyway to figure out which dri device you want.
This will fix dmesg noise for rockchip and sti.
Also add a fallback to driver->name for entirely virtual drivers like
vgem.
v2: Rebase on top of
commit e112e593b2
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()
and simplify a bit. Plus add a comment.
v3: WARN_ON(!dev->unique) as discussed with Emil.
Cc: Ilia Mirkin <imirkin@alum.mit.edu>
Reported-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> (v2)
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1466499262-18717-3-git-send-email-daniel.vetter@ffwll.ch
This commit is contained in:
parent
81065548ae
commit
5079c4643f
|
@ -525,11 +525,11 @@ int drm_dev_init(struct drm_device *dev,
|
|||
}
|
||||
}
|
||||
|
||||
if (parent) {
|
||||
ret = drm_dev_set_unique(dev, dev_name(parent));
|
||||
if (ret)
|
||||
goto err_setunique;
|
||||
}
|
||||
/* Use the parent device name as DRM device unique identifier, but fall
|
||||
* back to the driver name for virtual devices like vgem. */
|
||||
ret = drm_dev_set_unique(dev, parent ? dev_name(parent) : driver->name);
|
||||
if (ret)
|
||||
goto err_setunique;
|
||||
|
||||
return 0;
|
||||
|
||||
|
|
|
@ -135,12 +135,7 @@ static int drm_set_busid(struct drm_device *dev, struct drm_file *file_priv)
|
|||
return ret;
|
||||
}
|
||||
} else {
|
||||
if (WARN(dev->unique == NULL,
|
||||
"No drm_driver.set_busid() implementation provided by "
|
||||
"%ps. Use drm_dev_set_unique() to set the unique "
|
||||
"name explicitly.", dev->driver))
|
||||
return -EINVAL;
|
||||
|
||||
WARN_ON(!dev->unique);
|
||||
master->unique = kstrdup(dev->unique, GFP_KERNEL);
|
||||
if (master->unique)
|
||||
master->unique_len = strlen(dev->unique);
|
||||
|
|
Loading…
Reference in New Issue