This little patch adds support for lcd-panel backlight
enabling/disabling (according to the dpms mode) for GeForce2 Go
chipsets.  It has only been tested on a Dell Inspiron 8100.

I determined the necessary register values by comparing register dumps
before and after BIOS-initiated disabling of the backlight.  (BIOS
control only works with a non-ACPI enabled kernel)  In the particular
byte that is masked and set, the 0x01 bit appears to enable/disable the
backlight and the 0x10 bit the lcd panel itself.  The other bits have no
function that I could see, but they're also set to the same values that
the BIOS sets them.



--- xc/programs/Xserver/hw/xfree86/drivers/nv/nv_driver.c.bak   2004-04-05
02:13:51.000000000 +0200
+++ xc/programs/Xserver/hw/xfree86/drivers/nv/nv_driver.c       2004-06-05
19:44:56.000000000 +0300
@@ -1623,6 +1623,17 @@
     }
 #endif
     
+    if((pNv->Chipset == 0x10DE0112))
+    {
+      /* GeForce2 Go */
+      CARD32 tmp_pcrt;
+      tmp_pcrt = pNv->PCRTC0[0x081C/4] & 0xFFFFFF00;
+      if(on) {
+          tmp_pcrt |= 0x55;
+      }
+      pNv->PCRTC0[0x081C/4] = tmp_pcrt;
+    }
+
     /* cut the TMDS output */
     if(on) fpcontrol |= pNv->fpSyncs;
     else fpcontrol |= 0x20000022;


_______________________________________________
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel

Reply via email to