xf86-video-intel

Lukas Hejtmanek xhejtman at ics.muni.cz
Thu Nov 22 01:05:45 PST 2007


On Tue, Nov 20, 2007 at 12:49:57PM -0800, Jesse Barnes wrote:
> Ooh, that's actually a bug I think... does this work better for you?

also something like the patch below is needed otherwise the driver restores
backlight level to the level gained at the server startup every time some 
application touches screensaver.

diff --git a/src/i830_lvds.c b/src/i830_lvds.c
index a3a56f7..ab6b472 100644
--- a/src/i830_lvds.c
+++ b/src/i830_lvds.c
@@ -355,6 +354,14 @@ i830SetLVDSPanelPower(xf86OutputPtr output, Bool on)
     I830Ptr                pI830 = I830PTR(pScrn);
     CARD32                 pp_status;
 
+    /* We need to save current backlight level which can be different from 
+     * the server start up so that we restore it correctly.
+     * We assume that if LVDS is turned on, it contains also correct backlight 
+     * level.
+     */
+    if (INREG(PP_CONTROL) & POWER_TARGET_ON)
+        dev_priv->backlight_duty_cycle = dev_priv->get_backlight(output);
+
     if (on) {
        OUTREG(PP_CONTROL, INREG(PP_CONTROL) | POWER_TARGET_ON);
        do {

-- 
Lukáš Hejtmánek



More information about the xorg mailing list