aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2014-04-11 09:55:17 -0400
committerJani Nikula <jani.nikula@intel.com>2014-12-10 04:11:28 -0500
commit0b6d24c01932db99fc95304235e751e7f7625c41 (patch)
tree776a0bef38526d3087927ad3b5e668da1f0e378a /drivers/gpu
parente7d6f7d708290da1b7c92f533444b042c79412e0 (diff)
drm/i915: Don't complain about stolen conflicts on gen3
Apparently stuff works that way on those machines. I agree with Chris' concern that this is a bit risky but imo worth a shot in -next just for fun. Afaics all these machines have the pci resources allocated like that by the BIOS, so I suspect that it's all ok. This regression goes back to commit eaba1b8f3379b5d100bd146b9a41d28348bdfd09 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Thu Jul 4 12:28:35 2013 +0100 drm/i915: Verify that our stolen memory doesn't conflict Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76983 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71031 Tested-by: lu hua <huax.lu@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> Tested-by: Paul Menzel <paulepanter@users.sourceforge.net> Cc: stable@vger.kernel.org Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/i915/i915_gem_stolen.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c
index c38891892547..a2045848bd1a 100644
--- a/drivers/gpu/drm/i915/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/i915_gem_stolen.c
@@ -137,7 +137,11 @@ static unsigned long i915_stolen_to_physical(struct drm_device *dev)
137 r = devm_request_mem_region(dev->dev, base + 1, 137 r = devm_request_mem_region(dev->dev, base + 1,
138 dev_priv->gtt.stolen_size - 1, 138 dev_priv->gtt.stolen_size - 1,
139 "Graphics Stolen Memory"); 139 "Graphics Stolen Memory");
140 if (r == NULL) { 140 /*
141 * GEN3 firmware likes to smash pci bridges into the stolen
142 * range. Apparently this works.
143 */
144 if (r == NULL && !IS_GEN3(dev)) {
141 DRM_ERROR("conflict detected with stolen region: [0x%08x - 0x%08x]\n", 145 DRM_ERROR("conflict detected with stolen region: [0x%08x - 0x%08x]\n",
142 base, base + (uint32_t)dev_priv->gtt.stolen_size); 146 base, base + (uint32_t)dev_priv->gtt.stolen_size);
143 base = 0; 147 base = 0;