Hi Daniel,
I've just looked at the docs and they only mention that the base address
must be pixel aligned. But it could very well be that the watermarks are a
bit off for your chipset. The below quick hack should test this theory.
-Daniel
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index dfdc7ad..990b1f4 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -1673,7 +1673,7 @@ static void i830_update_wm(struct drm_device *dev)
dev_priv->display.get_fifo_size(dev, 0),
4, latency_ns);
fwater_lo = I915_READ(FW_BLC)& ~0xfff;
- fwater_lo |= (3<<8) | planea_wm;
+ fwater_lo |= (3<<8) | 0;
DRM_DEBUG_KMS("Setting FIFO watermarks - A: %d\n", planea_wm);
Checked with the above modifications. Unfortunately, the result is
negative. With the above modifications and my changes commented out, the
screen flickers in normal state (without panning) but in a different
way: With the above enabled, you get a rather irregular almost
pseudo-random flicker, and not the 60/30Hz flicker I see when panning
horizontally. If I add horizontal panning, then I also get this
irregular flicker, except when scrolling to the "forbidden positions" at
which I get the regular hi-frequency flicker again.
However, now that I checked closer, I found that my patch has also a
drawback, namely the hardware scroll position and the requested scroll
position disagrees, i.e. the mouse pointer is not exactly where it
should be, i.e. the mouse pointer hot-spot is off.
Is there a way to indicate the calling method what the actual
panning/scroll position is if it is different from the requested position?
Is there a different method to scroll the screen than to adjust the
screen origin? Old hardware had not only a screen pointer, but also a
pixel-offset (horizontal scroll) register. Is there something like this
on the 830M to work around the observed trouble?
Greetings,
Thomas
PS: A closer inspection shows that the screen flickers if the panning
position x has the property that (x mod 16) != 0. Strange enough.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx