Re: [PATCH] ACPI: disable the ACPI backlight control on laptops with buggy _BCL methods

Zhang Rui
2009-01-08T06:30:45Z

On Thu, 2009-01-08 at 11:32 +0800, Matthew Garrett wrote:
> On Thu, Jan 08, 2009 at 10:58:16AM +0800, Zhang Rui wrote:
>
> > Some users used to control the backlight via the platform interface.
> > But commit c3d6de698c84efdbdd3781b7058bcc339ab43da8 disables the platform
> > backlight control if ACPI video backlight control is available.
> >
> > This breaks the laptops with buggy _BCL/_BCM/_BQC methods. i.e. only ACPI
> > backlight I/F are available on these laptops but they don't work.
> >
> > With this patch applied, the ACPI backlight control are disabled instead
> > on these laptops.
>
> Why? These all seem to behave consistently, so I can't see any problem
> with us simply adding support for this varient.
the problem is that the ACPI backlight I/F and the platform I/F coexists
before commit ﻿c3d6de698c84efdbdd3781b7058bcc339ab43da8 applied, and the
platform I/F is preferred.

> Disabling the ACPI
> control when we have no idea whether there's a platform driver available
> for the machine doesn't seem like the right fix.
>
But once we enable the ACPI backlight control, the platform backlight
control is not available any more.

In these bugs, the _BCL/_BCM/_BQC method is really not well implemented.

﻿in bug 12249 and 12037,
1. the first two elements in _BCL are NOT the backlight levels when the
platform is on AC or battery.
2. _BQC returns the index of the current brightness ﻿﻿in _BCL package
rather than the value, which surely breaks the ACPI video driver.
﻿
in bug 12302
﻿1. the first two elements in _BCL are NOT the backlight levels when the
platform is on AC or battery.
2. every elements in the _BCL package is not a percentage of the maximum
brightness, which is also a violation of ACPI spec.

yes, we can make the ACPI backlight control work by using customized
DSDT. But that's not the fix neither. I don't have any better ideas than
disable them.

thanks,
rui

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html