If you have a laptop with Intel graphics and broken backlight control…

e.g. a Sony Vaio Y-series, where upon seeing the debugging data kernel developer Matthew Garrett (mjg) pronounced it “what an awful implementation — utterly broken”, there is hope yet.

Matthew has been working on native backlight control for a while, and for Intel hardware, there’s currently only one patch left to merge onto Linus’ kernel tree; it applies cleanly onto the most recent kernel release candidate (3.0-rc7).

Unfortunately, by default the ACPI subsystem will still be used if available, which is the sensible default. You do want to use the predefined backlight values whenever possible, not the raw values the graphics card let you set.

Ubuntu users have been resorting to Kamal Mostafa’s linux-kamal-mjgbacklight repository, which enables native backlight control, disable the ACPI video driver, and provide a patched GNOME Power Manager that can interface with the native backlight control.

The workaround I came up with is more lightweight — it just uses inotify-tools to monitor the brightness file, and apply an appropriate equivalent value to the native backlight control. Feel free to use this if you’re affected by a similar problem.