summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_drv.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-04-19 08:36:26 +0100
committerKeith Packard <keithp@keithp.com>2011-05-10 13:19:18 -0700
commitd2dff872ac44540622ef77a2b7d6ce4a1b145931 (patch)
treec66cb740139e9793b39d6d0731eebc6b3a53b85f /drivers/gpu/drm/i915/intel_drv.h
parent0622a53c60fbf48d3b85efc4995f4c152c254cf4 (diff)
downloadblackbird-op-linux-d2dff872ac44540622ef77a2b7d6ce4a1b145931.tar.gz
blackbird-op-linux-d2dff872ac44540622ef77a2b7d6ce4a1b145931.zip
drm/i915: Attach a fb to the load-detect pipe
We need to ensure that we feed valid memory into the display plane attached to the pipe when switching the pipe on. Otherwise, the display engine may read through an invalid PTE and so throw an PGTBL_ER exception. As we need to perform load detection before even the first object is allocated for the fbdev, there is no pre-existing object large enough for us to borrow to use as the framebuffer. So we need to create one and cleanup afterwards. At other times, the current fbcon may be large enough for us to borrow it for duration of load detection. Found by assert_fb_bound_for_plane(). Reported-by: Knut Petersen <Knut_Petersen@t-online.de> References: https://bugs.freedesktop.org/show_bug.cgi?id=36246 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_drv.h')
-rw-r--r--drivers/gpu/drm/i915/intel_drv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 3ceb3daeb61f..2e49b62da9a5 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -292,6 +292,7 @@ extern void intel_wait_for_vblank(struct drm_device *dev, int pipe);
extern void intel_wait_for_pipe_off(struct drm_device *dev, int pipe);
struct intel_load_detect_pipe {
+ struct drm_framebuffer *release_fb;
bool load_detect_temp;
int dpms_mode;
};
OpenPOWER on IntegriCloud