aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/drm_drv.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/drm_drv.c')
-rw-r--r--drivers/gpu/drm/drm_drv.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
index cd162d406078..ddf7eabdbf3b 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
@@ -284,7 +284,7 @@ void drm_minor_release(struct drm_minor *minor)
* struct clk *pclk;
* };
*
- * static struct drm_driver driver_drm_driver = {
+ * static const struct drm_driver driver_drm_driver = {
* [...]
* };
*
@@ -574,7 +574,7 @@ static void drm_dev_init_release(struct drm_device *dev, void *res)
}
static int drm_dev_init(struct drm_device *dev,
- struct drm_driver *driver,
+ const struct drm_driver *driver,
struct device *parent)
{
int ret;
@@ -589,7 +589,11 @@ static int drm_dev_init(struct drm_device *dev,
kref_init(&dev->ref);
dev->dev = get_device(parent);
+#ifdef CONFIG_DRM_LEGACY
+ dev->driver = (struct drm_driver *)driver;
+#else
dev->driver = driver;
+#endif
INIT_LIST_HEAD(&dev->managed.resources);
spin_lock_init(&dev->managed.lock);
@@ -663,7 +667,7 @@ static void devm_drm_dev_init_release(void *data)
static int devm_drm_dev_init(struct device *parent,
struct drm_device *dev,
- struct drm_driver *driver)
+ const struct drm_driver *driver)
{
int ret;
@@ -671,14 +675,12 @@ static int devm_drm_dev_init(struct device *parent,
if (ret)
return ret;
- ret = devm_add_action(parent, devm_drm_dev_init_release, dev);
- if (ret)
- devm_drm_dev_init_release(dev);
-
- return ret;
+ return devm_add_action_or_reset(parent,
+ devm_drm_dev_init_release, dev);
}
-void *__devm_drm_dev_alloc(struct device *parent, struct drm_driver *driver,
+void *__devm_drm_dev_alloc(struct device *parent,
+ const struct drm_driver *driver,
size_t size, size_t offset)
{
void *container;
@@ -713,7 +715,7 @@ EXPORT_SYMBOL(__devm_drm_dev_alloc);
* RETURNS:
* Pointer to new DRM device, or ERR_PTR on failure.
*/
-struct drm_device *drm_dev_alloc(struct drm_driver *driver,
+struct drm_device *drm_dev_alloc(const struct drm_driver *driver,
struct device *parent)
{
struct drm_device *dev;
@@ -858,7 +860,7 @@ static void remove_compat_control_link(struct drm_device *dev)
*/
int drm_dev_register(struct drm_device *dev, unsigned long flags)
{
- struct drm_driver *driver = dev->driver;
+ const struct drm_driver *driver = dev->driver;
int ret;
if (!driver->load)
@@ -892,8 +894,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags)
if (drm_core_check_feature(dev, DRIVER_MODESET))
drm_modeset_register_all(dev);
- ret = 0;
-
DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
driver->name, driver->major, driver->minor,
driver->patchlevel, driver->date,