OSDN Git Service

drm/ast: Call struct drm_driver.{load, unload} before registering device
authorThomas Zimmermann <tzimmermann@suse.de>
Wed, 13 Nov 2019 15:58:57 +0000 (16:58 +0100)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 14 Nov 2019 12:54:39 +0000 (13:54 +0100)
Both callbacks are deprecated. Remove them and call functions explicitly.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20191113155857.9507-3-tzimmermann@suse.de
drivers/gpu/drm/ast/ast_drv.c

index 78c90a3..9da2675 100644 (file)
@@ -104,17 +104,24 @@ static int ast_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
        dev->pdev = pdev;
        pci_set_drvdata(pdev, dev);
 
-       ret = drm_dev_register(dev, ent->driver_data);
+       ret = ast_driver_load(dev, ent->driver_data);
        if (ret)
                goto err_drm_dev_put;
 
+       ret = drm_dev_register(dev, ent->driver_data);
+       if (ret)
+               goto err_ast_driver_unload;
+
        return 0;
 
+err_ast_driver_unload:
+       ast_driver_unload(dev);
 err_drm_dev_put:
        drm_dev_put(dev);
 err_pci_disable_device:
        pci_disable_device(pdev);
        return ret;
+
 }
 
 static void
@@ -123,6 +130,7 @@ ast_pci_remove(struct pci_dev *pdev)
        struct drm_device *dev = pci_get_drvdata(pdev);
 
        drm_dev_unregister(dev);
+       ast_driver_unload(dev);
        drm_dev_put(dev);
 }
 
@@ -228,9 +236,6 @@ static struct drm_driver driver = {
                           DRIVER_GEM |
                           DRIVER_MODESET,
 
-       .load = ast_driver_load,
-       .unload = ast_driver_unload,
-
        .fops = &ast_fops,
        .name = DRIVER_NAME,
        .desc = DRIVER_DESC,