diff options
author | Chris Wilson | 2014-02-07 21:37:02 +0100 |
---|---|---|
committer | Daniel Vetter | 2014-02-12 18:52:56 +0100 |
commit | 75fa041de7d520007cdf519fed5c208f5ffffdf4 (patch) | |
tree | 24f9593aa8d83d850d33c1c22ffff9fce320c4b7 /drivers/gpu/drm/i915/intel_display.c | |
parent | drm/i915: alloc intel_fb in the intel_fbdev struct (diff) | |
download | kernel-qcow2-linux-75fa041de7d520007cdf519fed5c208f5ffffdf4.tar.gz kernel-qcow2-linux-75fa041de7d520007cdf519fed5c208f5ffffdf4.tar.xz kernel-qcow2-linux-75fa041de7d520007cdf519fed5c208f5ffffdf4.zip |
drm/i915: Propagate PCI read/write errors during vga_set_state()
This has very little effect other than log the errors in case of failure,
and we then hope for the best.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index ac0f6b5cfdfa..cc426e10d746 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -11508,12 +11508,21 @@ int intel_modeset_vga_set_state(struct drm_device *dev, bool state) unsigned reg = INTEL_INFO(dev)->gen >= 6 ? SNB_GMCH_CTRL : INTEL_GMCH_CTRL; u16 gmch_ctrl; - pci_read_config_word(dev_priv->bridge_dev, reg, &gmch_ctrl); + if (pci_read_config_word(dev_priv->bridge_dev, reg, &gmch_ctrl)) { + DRM_ERROR("failed to read control word\n"); + return -EIO; + } + if (state) gmch_ctrl &= ~INTEL_GMCH_VGA_DISABLE; else gmch_ctrl |= INTEL_GMCH_VGA_DISABLE; - pci_write_config_word(dev_priv->bridge_dev, reg, gmch_ctrl); + + if (pci_write_config_word(dev_priv->bridge_dev, reg, gmch_ctrl)) { + DRM_ERROR("failed to write control word\n"); + return -EIO; + } + return 0; } |