於 一,2012-12-24 於 16:32 -0500,Ben Jencks 提到: > The addition of "Windows 2012" to the OSI strings in the 3.7 cycle has > caused backlight brightness adjustment to break on my ThinkPad T530. > > Without "Windows 2012" _BCL returns the actual 16 brightness levels: > > 5, 10, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 80, 90, 100 > > When "Windows 2012" is present, it returns 101 levels 0-100, but _BCM > rounds any value up to one of the real values above. > > This interacts badly with gnome-settings-daemon, which attempts to > change brightness in increments of 5 (1/20 of 100). If brightness is > currently 100, it attempts to decrement it to 95, but it gets rounded > back up to 100, so it's impossible to decrease the brightness. > > Booting with acpi_osi="!Windows 2012" fixes the problem, though I'm > not > sure if it introduces others; I see several other things depend on > WIN8 > in DSDT. > > Perhaps this should be fixed in gnome-settings-daemon, but since it > appears on the surface to be a kernel regression (3.6 works, 3.7 > broken) > I thought I'd report it here first. Yes, this is g-s-d's problem, g-s-d should adapt to more levels of brightness: plugins/power/gsd-power-manager.c /* on ACPI machines we have 4-16 levels, on others it's ~150 */ #define BRIGHTNESS_STEP_AMOUNT(max) ((max) < 20 ? 1 : (max) / 20) Thanks a lot! Joey Lee -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html