diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2017-06-02 17:16:31 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-06-08 10:54:39 -0400 |
commit | b58c11314a1706bf094c489ef5cb28f76478c704 (patch) | |
tree | 2ce9e91f65bbf3a24b3e002fda79cef4f9f60b47 /drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | |
parent | 3c50c2873283290d06af38a208c25f6434cf0a77 (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.c | 28 |
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) | |||
516 | static int amdgpu_pci_probe(struct pci_dev *pdev, | 516 | static 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 | |||
560 | err_pci: | ||
561 | pci_disable_device(pdev); | ||
562 | err_free: | ||
563 | drm_dev_unref(dev); | ||
564 | return ret; | ||
542 | } | 565 | } |
543 | 566 | ||
544 | static void | 567 | static 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 | ||
552 | static void | 576 | static void |