diff options
-rw-r--r-- | drivers/gpu/drm/i915/i915_dma.c | 9 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 25 | ||||
-rw-r--r-- | include/linux/vgaarb.h | 7 |
3 files changed, 3 insertions, 38 deletions
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index 52f5ad8037cc..d5c784d48671 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c | |||
@@ -1290,12 +1290,9 @@ static int i915_load_modeset_init(struct drm_device *dev) | |||
1290 | * then we do not take part in VGA arbitration and the | 1290 | * then we do not take part in VGA arbitration and the |
1291 | * vga_client_register() fails with -ENODEV. | 1291 | * vga_client_register() fails with -ENODEV. |
1292 | */ | 1292 | */ |
1293 | if (!HAS_PCH_SPLIT(dev)) { | 1293 | ret = vga_client_register(dev->pdev, dev, NULL, i915_vga_set_decode); |
1294 | ret = vga_client_register(dev->pdev, dev, NULL, | 1294 | if (ret && ret != -ENODEV) |
1295 | i915_vga_set_decode); | 1295 | goto out; |
1296 | if (ret && ret != -ENODEV) | ||
1297 | goto out; | ||
1298 | } | ||
1299 | 1296 | ||
1300 | intel_register_dsm_handler(); | 1297 | intel_register_dsm_handler(); |
1301 | 1298 | ||
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index aaea3ec811ed..581fb4b2f766 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -10038,15 +10038,6 @@ static void i915_disable_vga(struct drm_device *dev) | |||
10038 | outb(SR01, VGA_SR_INDEX); | 10038 | outb(SR01, VGA_SR_INDEX); |
10039 | sr1 = inb(VGA_SR_DATA); | 10039 | sr1 = inb(VGA_SR_DATA); |
10040 | outb(sr1 | 1<<5, VGA_SR_DATA); | 10040 | outb(sr1 | 1<<5, VGA_SR_DATA); |
10041 | |||
10042 | /* Disable VGA memory on Intel HD */ | ||
10043 | if (HAS_PCH_SPLIT(dev)) { | ||
10044 | outb(inb(VGA_MSR_READ) & ~VGA_MSR_MEM_EN, VGA_MSR_WRITE); | ||
10045 | vga_set_legacy_decoding(dev->pdev, VGA_RSRC_LEGACY_IO | | ||
10046 | VGA_RSRC_NORMAL_IO | | ||
10047 | VGA_RSRC_NORMAL_MEM); | ||
10048 | } | ||
10049 | |||
10050 | vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); | 10041 | vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); |
10051 | udelay(300); | 10042 | udelay(300); |
10052 | 10043 | ||
@@ -10054,20 +10045,6 @@ static void i915_disable_vga(struct drm_device *dev) | |||
10054 | POSTING_READ(vga_reg); | 10045 | POSTING_READ(vga_reg); |
10055 | } | 10046 | } |
10056 | 10047 | ||
10057 | static void i915_enable_vga(struct drm_device *dev) | ||
10058 | { | ||
10059 | /* Enable VGA memory on Intel HD */ | ||
10060 | if (HAS_PCH_SPLIT(dev)) { | ||
10061 | vga_get_uninterruptible(dev->pdev, VGA_RSRC_LEGACY_IO); | ||
10062 | outb(inb(VGA_MSR_READ) | VGA_MSR_MEM_EN, VGA_MSR_WRITE); | ||
10063 | vga_set_legacy_decoding(dev->pdev, VGA_RSRC_LEGACY_IO | | ||
10064 | VGA_RSRC_LEGACY_MEM | | ||
10065 | VGA_RSRC_NORMAL_IO | | ||
10066 | VGA_RSRC_NORMAL_MEM); | ||
10067 | vga_put(dev->pdev, VGA_RSRC_LEGACY_IO); | ||
10068 | } | ||
10069 | } | ||
10070 | |||
10071 | void intel_modeset_init_hw(struct drm_device *dev) | 10048 | void intel_modeset_init_hw(struct drm_device *dev) |
10072 | { | 10049 | { |
10073 | intel_init_power_well(dev); | 10050 | intel_init_power_well(dev); |
@@ -10559,8 +10536,6 @@ void intel_modeset_cleanup(struct drm_device *dev) | |||
10559 | 10536 | ||
10560 | intel_disable_fbc(dev); | 10537 | intel_disable_fbc(dev); |
10561 | 10538 | ||
10562 | i915_enable_vga(dev); | ||
10563 | |||
10564 | intel_disable_gt_powersave(dev); | 10539 | intel_disable_gt_powersave(dev); |
10565 | 10540 | ||
10566 | ironlake_teardown_rc6(dev); | 10541 | ironlake_teardown_rc6(dev); |
diff --git a/include/linux/vgaarb.h b/include/linux/vgaarb.h index 80cf8173a65b..2c02f3a8d2ba 100644 --- a/include/linux/vgaarb.h +++ b/include/linux/vgaarb.h | |||
@@ -65,15 +65,8 @@ struct pci_dev; | |||
65 | * out of the arbitration process (and can be safe to take | 65 | * out of the arbitration process (and can be safe to take |
66 | * interrupts at any time. | 66 | * interrupts at any time. |
67 | */ | 67 | */ |
68 | #if defined(CONFIG_VGA_ARB) | ||
69 | extern void vga_set_legacy_decoding(struct pci_dev *pdev, | 68 | extern void vga_set_legacy_decoding(struct pci_dev *pdev, |
70 | unsigned int decodes); | 69 | unsigned int decodes); |
71 | #else | ||
72 | static inline void vga_set_legacy_decoding(struct pci_dev *pdev, | ||
73 | unsigned int decodes) | ||
74 | { | ||
75 | } | ||
76 | #endif | ||
77 | 70 | ||
78 | /** | 71 | /** |
79 | * vga_get - acquire & locks VGA resources | 72 | * vga_get - acquire & locks VGA resources |