diff options
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/i915_debugfs.c | 5 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_drv.c | 59 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_gtt.c | 10 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_stolen.c | 19 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_gpu_error.c | 9 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/i915_suspend.c | 6 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 25 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_fbdev.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_guc_loader.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_i2c.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_runtime_pm.c | 30 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_sdvo.c | 4 |
12 files changed, 103 insertions, 73 deletions
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 67af3277811a..c82afb113f0a 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c | |||
@@ -2739,6 +2739,7 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused) | |||
2739 | struct drm_info_node *node = m->private; | 2739 | struct drm_info_node *node = m->private; |
2740 | struct drm_device *dev = node->minor->dev; | 2740 | struct drm_device *dev = node->minor->dev; |
2741 | struct drm_i915_private *dev_priv = to_i915(dev); | 2741 | struct drm_i915_private *dev_priv = to_i915(dev); |
2742 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
2742 | 2743 | ||
2743 | if (!HAS_RUNTIME_PM(dev_priv)) | 2744 | if (!HAS_RUNTIME_PM(dev_priv)) |
2744 | seq_puts(m, "Runtime power management not supported\n"); | 2745 | seq_puts(m, "Runtime power management not supported\n"); |
@@ -2753,8 +2754,8 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused) | |||
2753 | seq_printf(m, "Device Power Management (CONFIG_PM) disabled\n"); | 2754 | seq_printf(m, "Device Power Management (CONFIG_PM) disabled\n"); |
2754 | #endif | 2755 | #endif |
2755 | seq_printf(m, "PCI device power state: %s [%d]\n", | 2756 | seq_printf(m, "PCI device power state: %s [%d]\n", |
2756 | pci_power_name(dev_priv->drm.pdev->current_state), | 2757 | pci_power_name(pdev->current_state), |
2757 | dev_priv->drm.pdev->current_state); | 2758 | pdev->current_state); |
2758 | 2759 | ||
2759 | return 0; | 2760 | return 0; |
2760 | } | 2761 | } |
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index c316034aeda3..d22a1d8fe5b7 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c | |||
@@ -232,6 +232,7 @@ static int i915_getparam(struct drm_device *dev, void *data, | |||
232 | struct drm_file *file_priv) | 232 | struct drm_file *file_priv) |
233 | { | 233 | { |
234 | struct drm_i915_private *dev_priv = to_i915(dev); | 234 | struct drm_i915_private *dev_priv = to_i915(dev); |
235 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
235 | drm_i915_getparam_t *param = data; | 236 | drm_i915_getparam_t *param = data; |
236 | int value; | 237 | int value; |
237 | 238 | ||
@@ -242,10 +243,10 @@ static int i915_getparam(struct drm_device *dev, void *data, | |||
242 | /* Reject all old ums/dri params. */ | 243 | /* Reject all old ums/dri params. */ |
243 | return -ENODEV; | 244 | return -ENODEV; |
244 | case I915_PARAM_CHIPSET_ID: | 245 | case I915_PARAM_CHIPSET_ID: |
245 | value = dev->pdev->device; | 246 | value = pdev->device; |
246 | break; | 247 | break; |
247 | case I915_PARAM_REVISION: | 248 | case I915_PARAM_REVISION: |
248 | value = dev->pdev->revision; | 249 | value = pdev->revision; |
249 | break; | 250 | break; |
250 | case I915_PARAM_HAS_GEM: | 251 | case I915_PARAM_HAS_GEM: |
251 | value = 1; | 252 | value = 1; |
@@ -516,7 +517,7 @@ static void i915_switcheroo_set_state(struct pci_dev *pdev, enum vga_switcheroo_ | |||
516 | pr_info("switched on\n"); | 517 | pr_info("switched on\n"); |
517 | dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; | 518 | dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; |
518 | /* i915 resume handler doesn't set to D0 */ | 519 | /* i915 resume handler doesn't set to D0 */ |
519 | pci_set_power_state(dev->pdev, PCI_D0); | 520 | pci_set_power_state(pdev, PCI_D0); |
520 | i915_resume_switcheroo(dev); | 521 | i915_resume_switcheroo(dev); |
521 | dev->switch_power_state = DRM_SWITCH_POWER_ON; | 522 | dev->switch_power_state = DRM_SWITCH_POWER_ON; |
522 | } else { | 523 | } else { |
@@ -585,6 +586,7 @@ static void i915_gem_fini(struct drm_device *dev) | |||
585 | static int i915_load_modeset_init(struct drm_device *dev) | 586 | static int i915_load_modeset_init(struct drm_device *dev) |
586 | { | 587 | { |
587 | struct drm_i915_private *dev_priv = to_i915(dev); | 588 | struct drm_i915_private *dev_priv = to_i915(dev); |
589 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
588 | int ret; | 590 | int ret; |
589 | 591 | ||
590 | if (i915_inject_load_failure()) | 592 | if (i915_inject_load_failure()) |
@@ -601,13 +603,13 @@ static int i915_load_modeset_init(struct drm_device *dev) | |||
601 | * then we do not take part in VGA arbitration and the | 603 | * then we do not take part in VGA arbitration and the |
602 | * vga_client_register() fails with -ENODEV. | 604 | * vga_client_register() fails with -ENODEV. |
603 | */ | 605 | */ |
604 | ret = vga_client_register(dev->pdev, dev, NULL, i915_vga_set_decode); | 606 | ret = vga_client_register(pdev, dev, NULL, i915_vga_set_decode); |
605 | if (ret && ret != -ENODEV) | 607 | if (ret && ret != -ENODEV) |
606 | goto out; | 608 | goto out; |
607 | 609 | ||
608 | intel_register_dsm_handler(); | 610 | intel_register_dsm_handler(); |
609 | 611 | ||
610 | ret = vga_switcheroo_register_client(dev->pdev, &i915_switcheroo_ops, false); | 612 | ret = vga_switcheroo_register_client(pdev, &i915_switcheroo_ops, false); |
611 | if (ret) | 613 | if (ret) |
612 | goto cleanup_vga_client; | 614 | goto cleanup_vga_client; |
613 | 615 | ||
@@ -659,9 +661,9 @@ cleanup_irq: | |||
659 | cleanup_csr: | 661 | cleanup_csr: |
660 | intel_csr_ucode_fini(dev_priv); | 662 | intel_csr_ucode_fini(dev_priv); |
661 | intel_power_domains_fini(dev_priv); | 663 | intel_power_domains_fini(dev_priv); |
662 | vga_switcheroo_unregister_client(dev->pdev); | 664 | vga_switcheroo_unregister_client(pdev); |
663 | cleanup_vga_client: | 665 | cleanup_vga_client: |
664 | vga_client_register(dev->pdev, NULL, NULL, NULL); | 666 | vga_client_register(pdev, NULL, NULL, NULL); |
665 | out: | 667 | out: |
666 | return ret; | 668 | return ret; |
667 | } | 669 | } |
@@ -881,6 +883,7 @@ static void i915_driver_cleanup_early(struct drm_i915_private *dev_priv) | |||
881 | static int i915_mmio_setup(struct drm_device *dev) | 883 | static int i915_mmio_setup(struct drm_device *dev) |
882 | { | 884 | { |
883 | struct drm_i915_private *dev_priv = to_i915(dev); | 885 | struct drm_i915_private *dev_priv = to_i915(dev); |
886 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
884 | int mmio_bar; | 887 | int mmio_bar; |
885 | int mmio_size; | 888 | int mmio_size; |
886 | 889 | ||
@@ -897,7 +900,7 @@ static int i915_mmio_setup(struct drm_device *dev) | |||
897 | mmio_size = 512 * 1024; | 900 | mmio_size = 512 * 1024; |
898 | else | 901 | else |
899 | mmio_size = 2 * 1024 * 1024; | 902 | mmio_size = 2 * 1024 * 1024; |
900 | dev_priv->regs = pci_iomap(dev->pdev, mmio_bar, mmio_size); | 903 | dev_priv->regs = pci_iomap(pdev, mmio_bar, mmio_size); |
901 | if (dev_priv->regs == NULL) { | 904 | if (dev_priv->regs == NULL) { |
902 | DRM_ERROR("failed to map registers\n"); | 905 | DRM_ERROR("failed to map registers\n"); |
903 | 906 | ||
@@ -913,9 +916,10 @@ static int i915_mmio_setup(struct drm_device *dev) | |||
913 | static void i915_mmio_cleanup(struct drm_device *dev) | 916 | static void i915_mmio_cleanup(struct drm_device *dev) |
914 | { | 917 | { |
915 | struct drm_i915_private *dev_priv = to_i915(dev); | 918 | struct drm_i915_private *dev_priv = to_i915(dev); |
919 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
916 | 920 | ||
917 | intel_teardown_mchbar(dev); | 921 | intel_teardown_mchbar(dev); |
918 | pci_iounmap(dev->pdev, dev_priv->regs); | 922 | pci_iounmap(pdev, dev_priv->regs); |
919 | } | 923 | } |
920 | 924 | ||
921 | /** | 925 | /** |
@@ -994,6 +998,7 @@ static void intel_sanitize_options(struct drm_i915_private *dev_priv) | |||
994 | */ | 998 | */ |
995 | static int i915_driver_init_hw(struct drm_i915_private *dev_priv) | 999 | static int i915_driver_init_hw(struct drm_i915_private *dev_priv) |
996 | { | 1000 | { |
1001 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
997 | struct drm_device *dev = &dev_priv->drm; | 1002 | struct drm_device *dev = &dev_priv->drm; |
998 | int ret; | 1003 | int ret; |
999 | 1004 | ||
@@ -1032,11 +1037,11 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv) | |||
1032 | goto out_ggtt; | 1037 | goto out_ggtt; |
1033 | } | 1038 | } |
1034 | 1039 | ||
1035 | pci_set_master(dev->pdev); | 1040 | pci_set_master(pdev); |
1036 | 1041 | ||
1037 | /* overlay on gen2 is broken and can't address above 1G */ | 1042 | /* overlay on gen2 is broken and can't address above 1G */ |
1038 | if (IS_GEN2(dev)) { | 1043 | if (IS_GEN2(dev)) { |
1039 | ret = dma_set_coherent_mask(&dev->pdev->dev, DMA_BIT_MASK(30)); | 1044 | ret = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(30)); |
1040 | if (ret) { | 1045 | if (ret) { |
1041 | DRM_ERROR("failed to set DMA mask\n"); | 1046 | DRM_ERROR("failed to set DMA mask\n"); |
1042 | 1047 | ||
@@ -1053,7 +1058,7 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv) | |||
1053 | * which also needs to be handled carefully. | 1058 | * which also needs to be handled carefully. |
1054 | */ | 1059 | */ |
1055 | if (IS_BROADWATER(dev) || IS_CRESTLINE(dev)) { | 1060 | if (IS_BROADWATER(dev) || IS_CRESTLINE(dev)) { |
1056 | ret = dma_set_coherent_mask(&dev->pdev->dev, DMA_BIT_MASK(32)); | 1061 | ret = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32)); |
1057 | 1062 | ||
1058 | if (ret) { | 1063 | if (ret) { |
1059 | DRM_ERROR("failed to set DMA mask\n"); | 1064 | DRM_ERROR("failed to set DMA mask\n"); |
@@ -1083,7 +1088,7 @@ static int i915_driver_init_hw(struct drm_i915_private *dev_priv) | |||
1083 | * stuck interrupts on some machines. | 1088 | * stuck interrupts on some machines. |
1084 | */ | 1089 | */ |
1085 | if (!IS_I945G(dev) && !IS_I945GM(dev)) { | 1090 | if (!IS_I945G(dev) && !IS_I945GM(dev)) { |
1086 | if (pci_enable_msi(dev->pdev) < 0) | 1091 | if (pci_enable_msi(pdev) < 0) |
1087 | DRM_DEBUG_DRIVER("can't enable MSI"); | 1092 | DRM_DEBUG_DRIVER("can't enable MSI"); |
1088 | } | 1093 | } |
1089 | 1094 | ||
@@ -1101,10 +1106,10 @@ out_ggtt: | |||
1101 | */ | 1106 | */ |
1102 | static void i915_driver_cleanup_hw(struct drm_i915_private *dev_priv) | 1107 | static void i915_driver_cleanup_hw(struct drm_i915_private *dev_priv) |
1103 | { | 1108 | { |
1104 | struct drm_device *dev = &dev_priv->drm; | 1109 | struct pci_dev *pdev = dev_priv->drm.pdev; |
1105 | 1110 | ||
1106 | if (dev->pdev->msi_enabled) | 1111 | if (pdev->msi_enabled) |
1107 | pci_disable_msi(dev->pdev); | 1112 | pci_disable_msi(pdev); |
1108 | 1113 | ||
1109 | pm_qos_remove_request(&dev_priv->pm_qos); | 1114 | pm_qos_remove_request(&dev_priv->pm_qos); |
1110 | i915_ggtt_cleanup_hw(dev_priv); | 1115 | i915_ggtt_cleanup_hw(dev_priv); |
@@ -1274,6 +1279,7 @@ out_free_priv: | |||
1274 | void i915_driver_unload(struct drm_device *dev) | 1279 | void i915_driver_unload(struct drm_device *dev) |
1275 | { | 1280 | { |
1276 | struct drm_i915_private *dev_priv = to_i915(dev); | 1281 | struct drm_i915_private *dev_priv = to_i915(dev); |
1282 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
1277 | 1283 | ||
1278 | intel_fbdev_fini(dev); | 1284 | intel_fbdev_fini(dev); |
1279 | 1285 | ||
@@ -1302,8 +1308,8 @@ void i915_driver_unload(struct drm_device *dev) | |||
1302 | kfree(dev_priv->vbt.lfp_lvds_vbt_mode); | 1308 | kfree(dev_priv->vbt.lfp_lvds_vbt_mode); |
1303 | dev_priv->vbt.lfp_lvds_vbt_mode = NULL; | 1309 | dev_priv->vbt.lfp_lvds_vbt_mode = NULL; |
1304 | 1310 | ||
1305 | vga_switcheroo_unregister_client(dev->pdev); | 1311 | vga_switcheroo_unregister_client(pdev); |
1306 | vga_client_register(dev->pdev, NULL, NULL, NULL); | 1312 | vga_client_register(pdev, NULL, NULL, NULL); |
1307 | 1313 | ||
1308 | intel_csr_ucode_fini(dev_priv); | 1314 | intel_csr_ucode_fini(dev_priv); |
1309 | 1315 | ||
@@ -1400,6 +1406,7 @@ static bool suspend_to_idle(struct drm_i915_private *dev_priv) | |||
1400 | static int i915_drm_suspend(struct drm_device *dev) | 1406 | static int i915_drm_suspend(struct drm_device *dev) |
1401 | { | 1407 | { |
1402 | struct drm_i915_private *dev_priv = to_i915(dev); | 1408 | struct drm_i915_private *dev_priv = to_i915(dev); |
1409 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
1403 | pci_power_t opregion_target_state; | 1410 | pci_power_t opregion_target_state; |
1404 | int error; | 1411 | int error; |
1405 | 1412 | ||
@@ -1416,11 +1423,11 @@ static int i915_drm_suspend(struct drm_device *dev) | |||
1416 | 1423 | ||
1417 | drm_kms_helper_poll_disable(dev); | 1424 | drm_kms_helper_poll_disable(dev); |
1418 | 1425 | ||
1419 | pci_save_state(dev->pdev); | 1426 | pci_save_state(pdev); |
1420 | 1427 | ||
1421 | error = i915_gem_suspend(dev); | 1428 | error = i915_gem_suspend(dev); |
1422 | if (error) { | 1429 | if (error) { |
1423 | dev_err(&dev->pdev->dev, | 1430 | dev_err(&pdev->dev, |
1424 | "GEM idle failed, resume might fail\n"); | 1431 | "GEM idle failed, resume might fail\n"); |
1425 | goto out; | 1432 | goto out; |
1426 | } | 1433 | } |
@@ -1465,6 +1472,7 @@ out: | |||
1465 | static int i915_drm_suspend_late(struct drm_device *dev, bool hibernation) | 1472 | static int i915_drm_suspend_late(struct drm_device *dev, bool hibernation) |
1466 | { | 1473 | { |
1467 | struct drm_i915_private *dev_priv = to_i915(dev); | 1474 | struct drm_i915_private *dev_priv = to_i915(dev); |
1475 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
1468 | bool fw_csr; | 1476 | bool fw_csr; |
1469 | int ret; | 1477 | int ret; |
1470 | 1478 | ||
@@ -1498,7 +1506,7 @@ static int i915_drm_suspend_late(struct drm_device *dev, bool hibernation) | |||
1498 | goto out; | 1506 | goto out; |
1499 | } | 1507 | } |
1500 | 1508 | ||
1501 | pci_disable_device(dev->pdev); | 1509 | pci_disable_device(pdev); |
1502 | /* | 1510 | /* |
1503 | * During hibernation on some platforms the BIOS may try to access | 1511 | * During hibernation on some platforms the BIOS may try to access |
1504 | * the device even though it's already in D3 and hang the machine. So | 1512 | * the device even though it's already in D3 and hang the machine. So |
@@ -1512,7 +1520,7 @@ static int i915_drm_suspend_late(struct drm_device *dev, bool hibernation) | |||
1512 | * Acer Aspire 1830T | 1520 | * Acer Aspire 1830T |
1513 | */ | 1521 | */ |
1514 | if (!(hibernation && INTEL_INFO(dev_priv)->gen < 6)) | 1522 | if (!(hibernation && INTEL_INFO(dev_priv)->gen < 6)) |
1515 | pci_set_power_state(dev->pdev, PCI_D3hot); | 1523 | pci_set_power_state(pdev, PCI_D3hot); |
1516 | 1524 | ||
1517 | dev_priv->suspended_to_idle = suspend_to_idle(dev_priv); | 1525 | dev_priv->suspended_to_idle = suspend_to_idle(dev_priv); |
1518 | 1526 | ||
@@ -1629,6 +1637,7 @@ static int i915_drm_resume(struct drm_device *dev) | |||
1629 | static int i915_drm_resume_early(struct drm_device *dev) | 1637 | static int i915_drm_resume_early(struct drm_device *dev) |
1630 | { | 1638 | { |
1631 | struct drm_i915_private *dev_priv = to_i915(dev); | 1639 | struct drm_i915_private *dev_priv = to_i915(dev); |
1640 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
1632 | int ret; | 1641 | int ret; |
1633 | 1642 | ||
1634 | /* | 1643 | /* |
@@ -1651,7 +1660,7 @@ static int i915_drm_resume_early(struct drm_device *dev) | |||
1651 | * the device powered we can also remove the following set power state | 1660 | * the device powered we can also remove the following set power state |
1652 | * call. | 1661 | * call. |
1653 | */ | 1662 | */ |
1654 | ret = pci_set_power_state(dev->pdev, PCI_D0); | 1663 | ret = pci_set_power_state(pdev, PCI_D0); |
1655 | if (ret) { | 1664 | if (ret) { |
1656 | DRM_ERROR("failed to set PCI D0 power state (%d)\n", ret); | 1665 | DRM_ERROR("failed to set PCI D0 power state (%d)\n", ret); |
1657 | goto out; | 1666 | goto out; |
@@ -1670,12 +1679,12 @@ static int i915_drm_resume_early(struct drm_device *dev) | |||
1670 | * depend on the device enable refcount we can't anyway depend on them | 1679 | * depend on the device enable refcount we can't anyway depend on them |
1671 | * disabling/enabling the device. | 1680 | * disabling/enabling the device. |
1672 | */ | 1681 | */ |
1673 | if (pci_enable_device(dev->pdev)) { | 1682 | if (pci_enable_device(pdev)) { |
1674 | ret = -EIO; | 1683 | ret = -EIO; |
1675 | goto out; | 1684 | goto out; |
1676 | } | 1685 | } |
1677 | 1686 | ||
1678 | pci_set_master(dev->pdev); | 1687 | pci_set_master(pdev); |
1679 | 1688 | ||
1680 | disable_rpm_wakeref_asserts(dev_priv); | 1689 | disable_rpm_wakeref_asserts(dev_priv); |
1681 | 1690 | ||
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c index d31ae3d0f83f..eba0166c4df5 100644 --- a/drivers/gpu/drm/i915/i915_gem_gtt.c +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c | |||
@@ -350,10 +350,12 @@ static int setup_page_dma(struct drm_device *dev, struct i915_page_dma *p) | |||
350 | 350 | ||
351 | static void cleanup_page_dma(struct drm_device *dev, struct i915_page_dma *p) | 351 | static void cleanup_page_dma(struct drm_device *dev, struct i915_page_dma *p) |
352 | { | 352 | { |
353 | struct pci_dev *pdev = dev->pdev; | ||
354 | |||
353 | if (WARN_ON(!p->page)) | 355 | if (WARN_ON(!p->page)) |
354 | return; | 356 | return; |
355 | 357 | ||
356 | dma_unmap_page(&dev->pdev->dev, p->daddr, 4096, PCI_DMA_BIDIRECTIONAL); | 358 | dma_unmap_page(&pdev->dev, p->daddr, 4096, PCI_DMA_BIDIRECTIONAL); |
357 | __free_page(p->page); | 359 | __free_page(p->page); |
358 | memset(p, 0, sizeof(*p)); | 360 | memset(p, 0, sizeof(*p)); |
359 | } | 361 | } |
@@ -2681,8 +2683,8 @@ static void ggtt_unbind_vma(struct i915_vma *vma) | |||
2681 | 2683 | ||
2682 | void i915_gem_gtt_finish_object(struct drm_i915_gem_object *obj) | 2684 | void i915_gem_gtt_finish_object(struct drm_i915_gem_object *obj) |
2683 | { | 2685 | { |
2684 | struct drm_device *dev = obj->base.dev; | 2686 | struct drm_i915_private *dev_priv = to_i915(obj->base.dev); |
2685 | struct drm_i915_private *dev_priv = to_i915(dev); | 2687 | struct device *kdev = &dev_priv->drm.pdev->dev; |
2686 | struct i915_ggtt *ggtt = &dev_priv->ggtt; | 2688 | struct i915_ggtt *ggtt = &dev_priv->ggtt; |
2687 | 2689 | ||
2688 | if (unlikely(ggtt->do_idle_maps)) { | 2690 | if (unlikely(ggtt->do_idle_maps)) { |
@@ -2693,7 +2695,7 @@ void i915_gem_gtt_finish_object(struct drm_i915_gem_object *obj) | |||
2693 | } | 2695 | } |
2694 | } | 2696 | } |
2695 | 2697 | ||
2696 | dma_unmap_sg(&dev->pdev->dev, obj->pages->sgl, obj->pages->nents, | 2698 | dma_unmap_sg(kdev, obj->pages->sgl, obj->pages->nents, |
2697 | PCI_DMA_BIDIRECTIONAL); | 2699 | PCI_DMA_BIDIRECTIONAL); |
2698 | } | 2700 | } |
2699 | 2701 | ||
diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c index aa050fa1e558..59989e8ee5dc 100644 --- a/drivers/gpu/drm/i915/i915_gem_stolen.c +++ b/drivers/gpu/drm/i915/i915_gem_stolen.c | |||
@@ -92,6 +92,7 @@ void i915_gem_stolen_remove_node(struct drm_i915_private *dev_priv, | |||
92 | static unsigned long i915_stolen_to_physical(struct drm_device *dev) | 92 | static unsigned long i915_stolen_to_physical(struct drm_device *dev) |
93 | { | 93 | { |
94 | struct drm_i915_private *dev_priv = to_i915(dev); | 94 | struct drm_i915_private *dev_priv = to_i915(dev); |
95 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
95 | struct i915_ggtt *ggtt = &dev_priv->ggtt; | 96 | struct i915_ggtt *ggtt = &dev_priv->ggtt; |
96 | struct resource *r; | 97 | struct resource *r; |
97 | u32 base; | 98 | u32 base; |
@@ -111,7 +112,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
111 | if (INTEL_INFO(dev)->gen >= 3) { | 112 | if (INTEL_INFO(dev)->gen >= 3) { |
112 | u32 bsm; | 113 | u32 bsm; |
113 | 114 | ||
114 | pci_read_config_dword(dev->pdev, INTEL_BSM, &bsm); | 115 | pci_read_config_dword(pdev, INTEL_BSM, &bsm); |
115 | 116 | ||
116 | base = bsm & INTEL_BSM_MASK; | 117 | base = bsm & INTEL_BSM_MASK; |
117 | } else if (IS_I865G(dev)) { | 118 | } else if (IS_I865G(dev)) { |
@@ -119,7 +120,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
119 | u16 toud = 0; | 120 | u16 toud = 0; |
120 | u8 tmp; | 121 | u8 tmp; |
121 | 122 | ||
122 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 0), | 123 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 0), |
123 | I845_ESMRAMC, &tmp); | 124 | I845_ESMRAMC, &tmp); |
124 | 125 | ||
125 | if (tmp & TSEG_ENABLE) { | 126 | if (tmp & TSEG_ENABLE) { |
@@ -133,7 +134,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
133 | } | 134 | } |
134 | } | 135 | } |
135 | 136 | ||
136 | pci_bus_read_config_word(dev->pdev->bus, PCI_DEVFN(0, 0), | 137 | pci_bus_read_config_word(pdev->bus, PCI_DEVFN(0, 0), |
137 | I865_TOUD, &toud); | 138 | I865_TOUD, &toud); |
138 | 139 | ||
139 | base = (toud << 16) + tseg_size; | 140 | base = (toud << 16) + tseg_size; |
@@ -142,13 +143,13 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
142 | u32 tom; | 143 | u32 tom; |
143 | u8 tmp; | 144 | u8 tmp; |
144 | 145 | ||
145 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 0), | 146 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 0), |
146 | I85X_ESMRAMC, &tmp); | 147 | I85X_ESMRAMC, &tmp); |
147 | 148 | ||
148 | if (tmp & TSEG_ENABLE) | 149 | if (tmp & TSEG_ENABLE) |
149 | tseg_size = MB(1); | 150 | tseg_size = MB(1); |
150 | 151 | ||
151 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 1), | 152 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 1), |
152 | I85X_DRB3, &tmp); | 153 | I85X_DRB3, &tmp); |
153 | tom = tmp * MB(32); | 154 | tom = tmp * MB(32); |
154 | 155 | ||
@@ -158,7 +159,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
158 | u32 tom; | 159 | u32 tom; |
159 | u8 tmp; | 160 | u8 tmp; |
160 | 161 | ||
161 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 0), | 162 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 0), |
162 | I845_ESMRAMC, &tmp); | 163 | I845_ESMRAMC, &tmp); |
163 | 164 | ||
164 | if (tmp & TSEG_ENABLE) { | 165 | if (tmp & TSEG_ENABLE) { |
@@ -172,7 +173,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
172 | } | 173 | } |
173 | } | 174 | } |
174 | 175 | ||
175 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 0), | 176 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 0), |
176 | I830_DRB3, &tmp); | 177 | I830_DRB3, &tmp); |
177 | tom = tmp * MB(32); | 178 | tom = tmp * MB(32); |
178 | 179 | ||
@@ -182,7 +183,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
182 | u32 tom; | 183 | u32 tom; |
183 | u8 tmp; | 184 | u8 tmp; |
184 | 185 | ||
185 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 0), | 186 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 0), |
186 | I830_ESMRAMC, &tmp); | 187 | I830_ESMRAMC, &tmp); |
187 | 188 | ||
188 | if (tmp & TSEG_ENABLE) { | 189 | if (tmp & TSEG_ENABLE) { |
@@ -192,7 +193,7 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev) | |||
192 | tseg_size = KB(512); | 193 | tseg_size = KB(512); |
193 | } | 194 | } |
194 | 195 | ||
195 | pci_bus_read_config_byte(dev->pdev->bus, PCI_DEVFN(0, 0), | 196 | pci_bus_read_config_byte(pdev->bus, PCI_DEVFN(0, 0), |
196 | I830_DRB3, &tmp); | 197 | I830_DRB3, &tmp); |
197 | tom = tmp * MB(32); | 198 | tom = tmp * MB(32); |
198 | 199 | ||
diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c index 41ec7a183c73..aed55e4f100f 100644 --- a/drivers/gpu/drm/i915/i915_gpu_error.c +++ b/drivers/gpu/drm/i915/i915_gpu_error.c | |||
@@ -336,6 +336,7 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m, | |||
336 | { | 336 | { |
337 | struct drm_device *dev = error_priv->dev; | 337 | struct drm_device *dev = error_priv->dev; |
338 | struct drm_i915_private *dev_priv = to_i915(dev); | 338 | struct drm_i915_private *dev_priv = to_i915(dev); |
339 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
339 | struct drm_i915_error_state *error = error_priv->error; | 340 | struct drm_i915_error_state *error = error_priv->error; |
340 | struct drm_i915_error_object *obj; | 341 | struct drm_i915_error_object *obj; |
341 | int i, j, offset, elt; | 342 | int i, j, offset, elt; |
@@ -367,11 +368,11 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m, | |||
367 | } | 368 | } |
368 | err_printf(m, "Reset count: %u\n", error->reset_count); | 369 | err_printf(m, "Reset count: %u\n", error->reset_count); |
369 | err_printf(m, "Suspend count: %u\n", error->suspend_count); | 370 | err_printf(m, "Suspend count: %u\n", error->suspend_count); |
370 | err_printf(m, "PCI ID: 0x%04x\n", dev->pdev->device); | 371 | err_printf(m, "PCI ID: 0x%04x\n", pdev->device); |
371 | err_printf(m, "PCI Revision: 0x%02x\n", dev->pdev->revision); | 372 | err_printf(m, "PCI Revision: 0x%02x\n", pdev->revision); |
372 | err_printf(m, "PCI Subsystem: %04x:%04x\n", | 373 | err_printf(m, "PCI Subsystem: %04x:%04x\n", |
373 | dev->pdev->subsystem_vendor, | 374 | pdev->subsystem_vendor, |
374 | dev->pdev->subsystem_device); | 375 | pdev->subsystem_device); |
375 | err_printf(m, "IOMMU enabled?: %d\n", error->iommu); | 376 | err_printf(m, "IOMMU enabled?: %d\n", error->iommu); |
376 | 377 | ||
377 | if (HAS_CSR(dev)) { | 378 | if (HAS_CSR(dev)) { |
diff --git a/drivers/gpu/drm/i915/i915_suspend.c b/drivers/gpu/drm/i915/i915_suspend.c index 4f272777b4f4..a0af170062b1 100644 --- a/drivers/gpu/drm/i915/i915_suspend.c +++ b/drivers/gpu/drm/i915/i915_suspend.c | |||
@@ -63,6 +63,7 @@ static void i915_restore_display(struct drm_device *dev) | |||
63 | int i915_save_state(struct drm_device *dev) | 63 | int i915_save_state(struct drm_device *dev) |
64 | { | 64 | { |
65 | struct drm_i915_private *dev_priv = to_i915(dev); | 65 | struct drm_i915_private *dev_priv = to_i915(dev); |
66 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
66 | int i; | 67 | int i; |
67 | 68 | ||
68 | mutex_lock(&dev->struct_mutex); | 69 | mutex_lock(&dev->struct_mutex); |
@@ -70,7 +71,7 @@ int i915_save_state(struct drm_device *dev) | |||
70 | i915_save_display(dev); | 71 | i915_save_display(dev); |
71 | 72 | ||
72 | if (IS_GEN4(dev)) | 73 | if (IS_GEN4(dev)) |
73 | pci_read_config_word(dev->pdev, GCDGMBUS, | 74 | pci_read_config_word(pdev, GCDGMBUS, |
74 | &dev_priv->regfile.saveGCDGMBUS); | 75 | &dev_priv->regfile.saveGCDGMBUS); |
75 | 76 | ||
76 | /* Cache mode state */ | 77 | /* Cache mode state */ |
@@ -108,6 +109,7 @@ int i915_save_state(struct drm_device *dev) | |||
108 | int i915_restore_state(struct drm_device *dev) | 109 | int i915_restore_state(struct drm_device *dev) |
109 | { | 110 | { |
110 | struct drm_i915_private *dev_priv = to_i915(dev); | 111 | struct drm_i915_private *dev_priv = to_i915(dev); |
112 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
111 | int i; | 113 | int i; |
112 | 114 | ||
113 | mutex_lock(&dev->struct_mutex); | 115 | mutex_lock(&dev->struct_mutex); |
@@ -115,7 +117,7 @@ int i915_restore_state(struct drm_device *dev) | |||
115 | i915_gem_restore_fences(dev); | 117 | i915_gem_restore_fences(dev); |
116 | 118 | ||
117 | if (IS_GEN4(dev)) | 119 | if (IS_GEN4(dev)) |
118 | pci_write_config_word(dev->pdev, GCDGMBUS, | 120 | pci_write_config_word(pdev, GCDGMBUS, |
119 | dev_priv->regfile.saveGCDGMBUS); | 121 | dev_priv->regfile.saveGCDGMBUS); |
120 | i915_restore_display(dev); | 122 | i915_restore_display(dev); |
121 | 123 | ||
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index e8fee41c9b81..d5d8fea8305b 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -7273,9 +7273,10 @@ static int i9xx_misc_get_display_clock_speed(struct drm_device *dev) | |||
7273 | 7273 | ||
7274 | static int pnv_get_display_clock_speed(struct drm_device *dev) | 7274 | static int pnv_get_display_clock_speed(struct drm_device *dev) |
7275 | { | 7275 | { |
7276 | struct pci_dev *pdev = dev->pdev; | ||
7276 | u16 gcfgc = 0; | 7277 | u16 gcfgc = 0; |
7277 | 7278 | ||
7278 | pci_read_config_word(dev->pdev, GCFGC, &gcfgc); | 7279 | pci_read_config_word(pdev, GCFGC, &gcfgc); |
7279 | 7280 | ||
7280 | switch (gcfgc & GC_DISPLAY_CLOCK_MASK) { | 7281 | switch (gcfgc & GC_DISPLAY_CLOCK_MASK) { |
7281 | case GC_DISPLAY_CLOCK_267_MHZ_PNV: | 7282 | case GC_DISPLAY_CLOCK_267_MHZ_PNV: |
@@ -7297,9 +7298,10 @@ static int pnv_get_display_clock_speed(struct drm_device *dev) | |||
7297 | 7298 | ||
7298 | static int i915gm_get_display_clock_speed(struct drm_device *dev) | 7299 | static int i915gm_get_display_clock_speed(struct drm_device *dev) |
7299 | { | 7300 | { |
7301 | struct pci_dev *pdev = dev->pdev; | ||
7300 | u16 gcfgc = 0; | 7302 | u16 gcfgc = 0; |
7301 | 7303 | ||
7302 | pci_read_config_word(dev->pdev, GCFGC, &gcfgc); | 7304 | pci_read_config_word(pdev, GCFGC, &gcfgc); |
7303 | 7305 | ||
7304 | if (gcfgc & GC_LOW_FREQUENCY_ENABLE) | 7306 | if (gcfgc & GC_LOW_FREQUENCY_ENABLE) |
7305 | return 133333; | 7307 | return 133333; |
@@ -7321,6 +7323,7 @@ static int i865_get_display_clock_speed(struct drm_device *dev) | |||
7321 | 7323 | ||
7322 | static int i85x_get_display_clock_speed(struct drm_device *dev) | 7324 | static int i85x_get_display_clock_speed(struct drm_device *dev) |
7323 | { | 7325 | { |
7326 | struct pci_dev *pdev = dev->pdev; | ||
7324 | u16 hpllcc = 0; | 7327 | u16 hpllcc = 0; |
7325 | 7328 | ||
7326 | /* | 7329 | /* |
@@ -7328,10 +7331,10 @@ static int i85x_get_display_clock_speed(struct drm_device *dev) | |||
7328 | * encoding is different :( | 7331 | * encoding is different :( |
7329 | * FIXME is this the right way to detect 852GM/852GMV? | 7332 | * FIXME is this the right way to detect 852GM/852GMV? |
7330 | */ | 7333 | */ |
7331 | if (dev->pdev->revision == 0x1) | 7334 | if (pdev->revision == 0x1) |
7332 | return 133333; | 7335 | return 133333; |
7333 | 7336 | ||
7334 | pci_bus_read_config_word(dev->pdev->bus, | 7337 | pci_bus_read_config_word(pdev->bus, |
7335 | PCI_DEVFN(0, 3), HPLLCC, &hpllcc); | 7338 | PCI_DEVFN(0, 3), HPLLCC, &hpllcc); |
7336 | 7339 | ||
7337 | /* Assume that the hardware is in the high speed state. This | 7340 | /* Assume that the hardware is in the high speed state. This |
@@ -7432,10 +7435,11 @@ static unsigned int intel_hpll_vco(struct drm_device *dev) | |||
7432 | 7435 | ||
7433 | static int gm45_get_display_clock_speed(struct drm_device *dev) | 7436 | static int gm45_get_display_clock_speed(struct drm_device *dev) |
7434 | { | 7437 | { |
7438 | struct pci_dev *pdev = dev->pdev; | ||
7435 | unsigned int cdclk_sel, vco = intel_hpll_vco(dev); | 7439 | unsigned int cdclk_sel, vco = intel_hpll_vco(dev); |
7436 | uint16_t tmp = 0; | 7440 | uint16_t tmp = 0; |
7437 | 7441 | ||
7438 | pci_read_config_word(dev->pdev, GCFGC, &tmp); | 7442 | pci_read_config_word(pdev, GCFGC, &tmp); |
7439 | 7443 | ||
7440 | cdclk_sel = (tmp >> 12) & 0x1; | 7444 | cdclk_sel = (tmp >> 12) & 0x1; |
7441 | 7445 | ||
@@ -7454,6 +7458,7 @@ static int gm45_get_display_clock_speed(struct drm_device *dev) | |||
7454 | 7458 | ||
7455 | static int i965gm_get_display_clock_speed(struct drm_device *dev) | 7459 | static int i965gm_get_display_clock_speed(struct drm_device *dev) |
7456 | { | 7460 | { |
7461 | struct pci_dev *pdev = dev->pdev; | ||
7457 | static const uint8_t div_3200[] = { 16, 10, 8 }; | 7462 | static const uint8_t div_3200[] = { 16, 10, 8 }; |
7458 | static const uint8_t div_4000[] = { 20, 12, 10 }; | 7463 | static const uint8_t div_4000[] = { 20, 12, 10 }; |
7459 | static const uint8_t div_5333[] = { 24, 16, 14 }; | 7464 | static const uint8_t div_5333[] = { 24, 16, 14 }; |
@@ -7461,7 +7466,7 @@ static int i965gm_get_display_clock_speed(struct drm_device *dev) | |||
7461 | unsigned int cdclk_sel, vco = intel_hpll_vco(dev); | 7466 | unsigned int cdclk_sel, vco = intel_hpll_vco(dev); |
7462 | uint16_t tmp = 0; | 7467 | uint16_t tmp = 0; |
7463 | 7468 | ||
7464 | pci_read_config_word(dev->pdev, GCFGC, &tmp); | 7469 | pci_read_config_word(pdev, GCFGC, &tmp); |
7465 | 7470 | ||
7466 | cdclk_sel = ((tmp >> 8) & 0x1f) - 1; | 7471 | cdclk_sel = ((tmp >> 8) & 0x1f) - 1; |
7467 | 7472 | ||
@@ -7491,6 +7496,7 @@ fail: | |||
7491 | 7496 | ||
7492 | static int g33_get_display_clock_speed(struct drm_device *dev) | 7497 | static int g33_get_display_clock_speed(struct drm_device *dev) |
7493 | { | 7498 | { |
7499 | struct pci_dev *pdev = dev->pdev; | ||
7494 | static const uint8_t div_3200[] = { 12, 10, 8, 7, 5, 16 }; | 7500 | static const uint8_t div_3200[] = { 12, 10, 8, 7, 5, 16 }; |
7495 | static const uint8_t div_4000[] = { 14, 12, 10, 8, 6, 20 }; | 7501 | static const uint8_t div_4000[] = { 14, 12, 10, 8, 6, 20 }; |
7496 | static const uint8_t div_4800[] = { 20, 14, 12, 10, 8, 24 }; | 7502 | static const uint8_t div_4800[] = { 20, 14, 12, 10, 8, 24 }; |
@@ -7499,7 +7505,7 @@ static int g33_get_display_clock_speed(struct drm_device *dev) | |||
7499 | unsigned int cdclk_sel, vco = intel_hpll_vco(dev); | 7505 | unsigned int cdclk_sel, vco = intel_hpll_vco(dev); |
7500 | uint16_t tmp = 0; | 7506 | uint16_t tmp = 0; |
7501 | 7507 | ||
7502 | pci_read_config_word(dev->pdev, GCFGC, &tmp); | 7508 | pci_read_config_word(pdev, GCFGC, &tmp); |
7503 | 7509 | ||
7504 | cdclk_sel = (tmp >> 4) & 0x7; | 7510 | cdclk_sel = (tmp >> 4) & 0x7; |
7505 | 7511 | ||
@@ -15991,15 +15997,16 @@ static void intel_init_quirks(struct drm_device *dev) | |||
15991 | static void i915_disable_vga(struct drm_device *dev) | 15997 | static void i915_disable_vga(struct drm_device *dev) |
15992 | { | 15998 | { |
15993 | struct drm_i915_private *dev_priv = to_i915(dev); | 15999 | struct drm_i915_private *dev_priv = to_i915(dev); |
16000 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
15994 | u8 sr1; | 16001 | u8 sr1; |
15995 | i915_reg_t vga_reg = i915_vgacntrl_reg(dev); | 16002 | i915_reg_t vga_reg = i915_vgacntrl_reg(dev); |
15996 | 16003 | ||
15997 | /* WaEnableVGAAccessThroughIOPort:ctg,elk,ilk,snb,ivb,vlv,hsw */ | 16004 | /* WaEnableVGAAccessThroughIOPort:ctg,elk,ilk,snb,ivb,vlv,hsw */ |
15998 | vga_get_uninterruptible(dev->pdev, VGA_RSRC_LEGACY_IO); | 16005 | vga_get_uninterruptible(pdev, VGA_RSRC_LEGACY_IO); |
15999 | outb(SR01, VGA_SR_INDEX); | 16006 | outb(SR01, VGA_SR_INDEX); |
16000 | sr1 = inb(VGA_SR_DATA); | 16007 | sr1 = inb(VGA_SR_DATA); |
16001 | outb(sr1 | 1<<5, VGA_SR_DATA); | 16008 | outb(sr1 | 1<<5, VGA_SR_DATA); |
16002 | vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); | 16009 | vga_put(pdev, VGA_RSRC_LEGACY_IO); |
16003 | udelay(300); | 16010 | udelay(300); |
16004 | 16011 | ||
16005 | I915_WRITE(vga_reg, VGA_DISP_DISABLE); | 16012 | I915_WRITE(vga_reg, VGA_DISP_DISABLE); |
diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c index 4003e4908c09..b7098f98bb67 100644 --- a/drivers/gpu/drm/i915/intel_fbdev.c +++ b/drivers/gpu/drm/i915/intel_fbdev.c | |||
@@ -183,6 +183,7 @@ static int intelfb_create(struct drm_fb_helper *helper, | |||
183 | struct intel_framebuffer *intel_fb = ifbdev->fb; | 183 | struct intel_framebuffer *intel_fb = ifbdev->fb; |
184 | struct drm_device *dev = helper->dev; | 184 | struct drm_device *dev = helper->dev; |
185 | struct drm_i915_private *dev_priv = to_i915(dev); | 185 | struct drm_i915_private *dev_priv = to_i915(dev); |
186 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
186 | struct i915_ggtt *ggtt = &dev_priv->ggtt; | 187 | struct i915_ggtt *ggtt = &dev_priv->ggtt; |
187 | struct fb_info *info; | 188 | struct fb_info *info; |
188 | struct drm_framebuffer *fb; | 189 | struct drm_framebuffer *fb; |
@@ -280,7 +281,7 @@ static int intelfb_create(struct drm_fb_helper *helper, | |||
280 | ifbdev->vma = vma; | 281 | ifbdev->vma = vma; |
281 | 282 | ||
282 | mutex_unlock(&dev->struct_mutex); | 283 | mutex_unlock(&dev->struct_mutex); |
283 | vga_switcheroo_client_fb_set(dev->pdev, info); | 284 | vga_switcheroo_client_fb_set(pdev, info); |
284 | return 0; | 285 | return 0; |
285 | 286 | ||
286 | out_destroy_fbi: | 287 | out_destroy_fbi: |
diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c b/drivers/gpu/drm/i915/intel_guc_loader.c index 324812d69b70..e67d8de427d0 100644 --- a/drivers/gpu/drm/i915/intel_guc_loader.c +++ b/drivers/gpu/drm/i915/intel_guc_loader.c | |||
@@ -565,6 +565,7 @@ fail: | |||
565 | 565 | ||
566 | static void guc_fw_fetch(struct drm_device *dev, struct intel_guc_fw *guc_fw) | 566 | static void guc_fw_fetch(struct drm_device *dev, struct intel_guc_fw *guc_fw) |
567 | { | 567 | { |
568 | struct pci_dev *pdev = dev->pdev; | ||
568 | struct drm_i915_gem_object *obj; | 569 | struct drm_i915_gem_object *obj; |
569 | const struct firmware *fw; | 570 | const struct firmware *fw; |
570 | struct guc_css_header *css; | 571 | struct guc_css_header *css; |
@@ -574,7 +575,7 @@ static void guc_fw_fetch(struct drm_device *dev, struct intel_guc_fw *guc_fw) | |||
574 | DRM_DEBUG_DRIVER("before requesting firmware: GuC fw fetch status %s\n", | 575 | DRM_DEBUG_DRIVER("before requesting firmware: GuC fw fetch status %s\n", |
575 | intel_guc_fw_status_repr(guc_fw->guc_fw_fetch_status)); | 576 | intel_guc_fw_status_repr(guc_fw->guc_fw_fetch_status)); |
576 | 577 | ||
577 | err = request_firmware(&fw, guc_fw->guc_fw_path, &dev->pdev->dev); | 578 | err = request_firmware(&fw, guc_fw->guc_fw_path, &pdev->dev); |
578 | if (err) | 579 | if (err) |
579 | goto fail; | 580 | goto fail; |
580 | if (!fw) | 581 | if (!fw) |
diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c index 1f266d7df2ec..a4ca2052315e 100644 --- a/drivers/gpu/drm/i915/intel_i2c.c +++ b/drivers/gpu/drm/i915/intel_i2c.c | |||
@@ -633,6 +633,7 @@ static const struct i2c_algorithm gmbus_algorithm = { | |||
633 | int intel_setup_gmbus(struct drm_device *dev) | 633 | int intel_setup_gmbus(struct drm_device *dev) |
634 | { | 634 | { |
635 | struct drm_i915_private *dev_priv = to_i915(dev); | 635 | struct drm_i915_private *dev_priv = to_i915(dev); |
636 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
636 | struct intel_gmbus *bus; | 637 | struct intel_gmbus *bus; |
637 | unsigned int pin; | 638 | unsigned int pin; |
638 | int ret; | 639 | int ret; |
@@ -663,7 +664,7 @@ int intel_setup_gmbus(struct drm_device *dev) | |||
663 | "i915 gmbus %s", | 664 | "i915 gmbus %s", |
664 | get_gmbus_pin(dev_priv, pin)->name); | 665 | get_gmbus_pin(dev_priv, pin)->name); |
665 | 666 | ||
666 | bus->adapter.dev.parent = &dev->pdev->dev; | 667 | bus->adapter.dev.parent = &pdev->dev; |
667 | bus->dev_priv = dev_priv; | 668 | bus->dev_priv = dev_priv; |
668 | 669 | ||
669 | bus->adapter.algo = &gmbus_algorithm; | 670 | bus->adapter.algo = &gmbus_algorithm; |
diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c b/drivers/gpu/drm/i915/intel_runtime_pm.c index 7686b7f1d599..6c11168facd6 100644 --- a/drivers/gpu/drm/i915/intel_runtime_pm.c +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c | |||
@@ -287,6 +287,7 @@ void intel_display_set_init_power(struct drm_i915_private *dev_priv, | |||
287 | */ | 287 | */ |
288 | static void hsw_power_well_post_enable(struct drm_i915_private *dev_priv) | 288 | static void hsw_power_well_post_enable(struct drm_i915_private *dev_priv) |
289 | { | 289 | { |
290 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
290 | struct drm_device *dev = &dev_priv->drm; | 291 | struct drm_device *dev = &dev_priv->drm; |
291 | 292 | ||
292 | /* | 293 | /* |
@@ -299,9 +300,9 @@ static void hsw_power_well_post_enable(struct drm_i915_private *dev_priv) | |||
299 | * sure vgacon can keep working normally without triggering interrupts | 300 | * sure vgacon can keep working normally without triggering interrupts |
300 | * and error messages. | 301 | * and error messages. |
301 | */ | 302 | */ |
302 | vga_get_uninterruptible(dev->pdev, VGA_RSRC_LEGACY_IO); | 303 | vga_get_uninterruptible(pdev, VGA_RSRC_LEGACY_IO); |
303 | outb(inb(VGA_MSR_READ), VGA_MSR_WRITE); | 304 | outb(inb(VGA_MSR_READ), VGA_MSR_WRITE); |
304 | vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); | 305 | vga_put(pdev, VGA_RSRC_LEGACY_IO); |
305 | 306 | ||
306 | if (IS_BROADWELL(dev)) | 307 | if (IS_BROADWELL(dev)) |
307 | gen8_irq_power_well_post_enable(dev_priv, | 308 | gen8_irq_power_well_post_enable(dev_priv, |
@@ -318,7 +319,7 @@ static void hsw_power_well_pre_disable(struct drm_i915_private *dev_priv) | |||
318 | static void skl_power_well_post_enable(struct drm_i915_private *dev_priv, | 319 | static void skl_power_well_post_enable(struct drm_i915_private *dev_priv, |
319 | struct i915_power_well *power_well) | 320 | struct i915_power_well *power_well) |
320 | { | 321 | { |
321 | struct drm_device *dev = &dev_priv->drm; | 322 | struct pci_dev *pdev = dev_priv->drm.pdev; |
322 | 323 | ||
323 | /* | 324 | /* |
324 | * After we re-enable the power well, if we touch VGA register 0x3d5 | 325 | * After we re-enable the power well, if we touch VGA register 0x3d5 |
@@ -331,9 +332,9 @@ static void skl_power_well_post_enable(struct drm_i915_private *dev_priv, | |||
331 | * and error messages. | 332 | * and error messages. |
332 | */ | 333 | */ |
333 | if (power_well->data == SKL_DISP_PW_2) { | 334 | if (power_well->data == SKL_DISP_PW_2) { |
334 | vga_get_uninterruptible(dev->pdev, VGA_RSRC_LEGACY_IO); | 335 | vga_get_uninterruptible(pdev, VGA_RSRC_LEGACY_IO); |
335 | outb(inb(VGA_MSR_READ), VGA_MSR_WRITE); | 336 | outb(inb(VGA_MSR_READ), VGA_MSR_WRITE); |
336 | vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); | 337 | vga_put(pdev, VGA_RSRC_LEGACY_IO); |
337 | 338 | ||
338 | gen8_irq_power_well_post_enable(dev_priv, | 339 | gen8_irq_power_well_post_enable(dev_priv, |
339 | 1 << PIPE_C | 1 << PIPE_B); | 340 | 1 << PIPE_C | 1 << PIPE_B); |
@@ -2651,8 +2652,8 @@ void intel_power_domains_suspend(struct drm_i915_private *dev_priv) | |||
2651 | */ | 2652 | */ |
2652 | void intel_runtime_pm_get(struct drm_i915_private *dev_priv) | 2653 | void intel_runtime_pm_get(struct drm_i915_private *dev_priv) |
2653 | { | 2654 | { |
2654 | struct drm_device *dev = &dev_priv->drm; | 2655 | struct pci_dev *pdev = dev_priv->drm.pdev; |
2655 | struct device *kdev = &dev->pdev->dev; | 2656 | struct device *kdev = &pdev->dev; |
2656 | 2657 | ||
2657 | pm_runtime_get_sync(kdev); | 2658 | pm_runtime_get_sync(kdev); |
2658 | 2659 | ||
@@ -2672,8 +2673,8 @@ void intel_runtime_pm_get(struct drm_i915_private *dev_priv) | |||
2672 | */ | 2673 | */ |
2673 | bool intel_runtime_pm_get_if_in_use(struct drm_i915_private *dev_priv) | 2674 | bool intel_runtime_pm_get_if_in_use(struct drm_i915_private *dev_priv) |
2674 | { | 2675 | { |
2675 | struct drm_device *dev = &dev_priv->drm; | 2676 | struct pci_dev *pdev = dev_priv->drm.pdev; |
2676 | struct device *kdev = &dev->pdev->dev; | 2677 | struct device *kdev = &pdev->dev; |
2677 | 2678 | ||
2678 | if (IS_ENABLED(CONFIG_PM)) { | 2679 | if (IS_ENABLED(CONFIG_PM)) { |
2679 | int ret = pm_runtime_get_if_in_use(kdev); | 2680 | int ret = pm_runtime_get_if_in_use(kdev); |
@@ -2714,8 +2715,8 @@ bool intel_runtime_pm_get_if_in_use(struct drm_i915_private *dev_priv) | |||
2714 | */ | 2715 | */ |
2715 | void intel_runtime_pm_get_noresume(struct drm_i915_private *dev_priv) | 2716 | void intel_runtime_pm_get_noresume(struct drm_i915_private *dev_priv) |
2716 | { | 2717 | { |
2717 | struct drm_device *dev = &dev_priv->drm; | 2718 | struct pci_dev *pdev = dev_priv->drm.pdev; |
2718 | struct device *kdev = &dev->pdev->dev; | 2719 | struct device *kdev = &pdev->dev; |
2719 | 2720 | ||
2720 | assert_rpm_wakelock_held(dev_priv); | 2721 | assert_rpm_wakelock_held(dev_priv); |
2721 | pm_runtime_get_noresume(kdev); | 2722 | pm_runtime_get_noresume(kdev); |
@@ -2733,8 +2734,8 @@ void intel_runtime_pm_get_noresume(struct drm_i915_private *dev_priv) | |||
2733 | */ | 2734 | */ |
2734 | void intel_runtime_pm_put(struct drm_i915_private *dev_priv) | 2735 | void intel_runtime_pm_put(struct drm_i915_private *dev_priv) |
2735 | { | 2736 | { |
2736 | struct drm_device *dev = &dev_priv->drm; | 2737 | struct pci_dev *pdev = dev_priv->drm.pdev; |
2737 | struct device *kdev = &dev->pdev->dev; | 2738 | struct device *kdev = &pdev->dev; |
2738 | 2739 | ||
2739 | assert_rpm_wakelock_held(dev_priv); | 2740 | assert_rpm_wakelock_held(dev_priv); |
2740 | if (atomic_dec_and_test(&dev_priv->pm.wakeref_count)) | 2741 | if (atomic_dec_and_test(&dev_priv->pm.wakeref_count)) |
@@ -2756,8 +2757,9 @@ void intel_runtime_pm_put(struct drm_i915_private *dev_priv) | |||
2756 | */ | 2757 | */ |
2757 | void intel_runtime_pm_enable(struct drm_i915_private *dev_priv) | 2758 | void intel_runtime_pm_enable(struct drm_i915_private *dev_priv) |
2758 | { | 2759 | { |
2760 | struct pci_dev *pdev = dev_priv->drm.pdev; | ||
2759 | struct drm_device *dev = &dev_priv->drm; | 2761 | struct drm_device *dev = &dev_priv->drm; |
2760 | struct device *kdev = &dev->pdev->dev; | 2762 | struct device *kdev = &pdev->dev; |
2761 | 2763 | ||
2762 | pm_runtime_set_autosuspend_delay(kdev, 10000); /* 10s */ | 2764 | pm_runtime_set_autosuspend_delay(kdev, 10000); /* 10s */ |
2763 | pm_runtime_mark_last_busy(kdev); | 2765 | pm_runtime_mark_last_busy(kdev); |
diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c index e378f35365a2..dd75510eba67 100644 --- a/drivers/gpu/drm/i915/intel_sdvo.c +++ b/drivers/gpu/drm/i915/intel_sdvo.c | |||
@@ -2930,10 +2930,12 @@ static bool | |||
2930 | intel_sdvo_init_ddc_proxy(struct intel_sdvo *sdvo, | 2930 | intel_sdvo_init_ddc_proxy(struct intel_sdvo *sdvo, |
2931 | struct drm_device *dev) | 2931 | struct drm_device *dev) |
2932 | { | 2932 | { |
2933 | struct pci_dev *pdev = dev->pdev; | ||
2934 | |||
2933 | sdvo->ddc.owner = THIS_MODULE; | 2935 | sdvo->ddc.owner = THIS_MODULE; |
2934 | sdvo->ddc.class = I2C_CLASS_DDC; | 2936 | sdvo->ddc.class = I2C_CLASS_DDC; |
2935 | snprintf(sdvo->ddc.name, I2C_NAME_SIZE, "SDVO DDC proxy"); | 2937 | snprintf(sdvo->ddc.name, I2C_NAME_SIZE, "SDVO DDC proxy"); |
2936 | sdvo->ddc.dev.parent = &dev->pdev->dev; | 2938 | sdvo->ddc.dev.parent = &pdev->dev; |
2937 | sdvo->ddc.algo_data = sdvo; | 2939 | sdvo->ddc.algo_data = sdvo; |
2938 | sdvo->ddc.algo = &intel_sdvo_ddc_proxy; | 2940 | sdvo->ddc.algo = &intel_sdvo_ddc_proxy; |
2939 | 2941 | ||