aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
diff options
context:
space:
mode:
authorAlex Deucher <alexander.deucher@amd.com>2017-06-02 17:16:31 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-06-08 10:54:39 -0400
commitb58c11314a1706bf094c489ef5cb28f76478c704 (patch)
tree2ce9e91f65bbf3a24b3e002fda79cef4f9f60b47 /drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
parent3c50c2873283290d06af38a208c25f6434cf0a77 (diff)
drm/amdgpu: drop deprecated drm_get_pci_dev and drm_put_dev
Open code them so we can adjust the order in the driver more easily. Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c28
1 files changed, 26 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
index 82efdcae30b7..9c6cdfd45e49 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
@@ -516,6 +516,7 @@ static int amdgpu_kick_out_firmware_fb(struct pci_dev *pdev)
516static int amdgpu_pci_probe(struct pci_dev *pdev, 516static int amdgpu_pci_probe(struct pci_dev *pdev,
517 const struct pci_device_id *ent) 517 const struct pci_device_id *ent)
518{ 518{
519 struct drm_device *dev;
519 unsigned long flags = ent->driver_data; 520 unsigned long flags = ent->driver_data;
520 int ret; 521 int ret;
521 522
@@ -538,7 +539,29 @@ static int amdgpu_pci_probe(struct pci_dev *pdev,
538 if (ret) 539 if (ret)
539 return ret; 540 return ret;
540 541
541 return drm_get_pci_dev(pdev, ent, &kms_driver); 542 dev = drm_dev_alloc(&kms_driver, &pdev->dev);
543 if (IS_ERR(dev))
544 return PTR_ERR(dev);
545
546 ret = pci_enable_device(pdev);
547 if (ret)
548 goto err_free;
549
550 dev->pdev = pdev;
551
552 pci_set_drvdata(pdev, dev);
553
554 ret = drm_dev_register(dev, ent->driver_data);
555 if (ret)
556 goto err_pci;
557
558 return 0;
559
560err_pci:
561 pci_disable_device(pdev);
562err_free:
563 drm_dev_unref(dev);
564 return ret;
542} 565}
543 566
544static void 567static void
@@ -546,7 +569,8 @@ amdgpu_pci_remove(struct pci_dev *pdev)
546{ 569{
547 struct drm_device *dev = pci_get_drvdata(pdev); 570 struct drm_device *dev = pci_get_drvdata(pdev);
548 571
549 drm_put_dev(dev); 572 drm_dev_unregister(dev);
573 drm_dev_unref(dev);
550} 574}
551 575
552static void 576static void