From: Aaron Lu <aaron.lwe@gmail.com>
To: Seth Forshee <seth.forshee@canonical.com>
Cc: Aaron Lu <aaron.lu@intel.com>, Ben Jencks <ben@bjencks.net>,
Len Brown <lenb@kernel.org>, "Rafael J. Wysocki" <rjw@sisk.pl>,
linux-acpi@vger.kernel.org, joeyli <jlee@suse.com>,
Matthew Garrett <mjg59@srcf.ucam.org>,
Danny Baumann <dannybaumann@web.de>
Subject: Re: [PATCH] ACPI: Disable Windows 8 compatibility for some Lenovo ThinkPads
Date: Thu, 04 Apr 2013 19:39:58 +0800 [thread overview]
Message-ID: <515D668E.20102@gmail.com> (raw)
In-Reply-To: <20130403134515.GA16939@thinkpad-t410>
On 04/03/2013 09:45 PM, Seth Forshee wrote:
> On Wed, Apr 03, 2013 at 03:27:46PM +0800, Aaron Lu wrote:
>> On 04/03/2013 03:04 PM, Ben Jencks wrote:
>>> On 04/02/2013 09:00 AM, Seth Forshee wrote:
>>>> On Tue, Apr 02, 2013 at 05:08:23PM +0800, Aaron Lu wrote:
>>>>> On 04/01/2013 09:03 PM, Seth Forshee wrote:
>>>>>> On Mon, Apr 01, 2013 at 09:53:36AM +0800, Aaron Lu wrote:
>>>>>>> On 02/12/2013 12:21 AM, Seth Forshee wrote:
>>>>>>>> The AML implementation for brightness control on several ThinkPads
>>>>>>>> contains a workaround to meet a Windows 8 requirement of 101 brightness
>>>>>>>> levels [1]. The implementation is flawed, as only 16 of the brighness
>>>>>>>> values reported by _BCL affect a change in brightness. _BCM silently
>>>>>>>> discards the rest of the values. Disabling Windows 8 compatibility on
>>>>>>>> these machines reverts them to the old behavior, making _BCL only report
>>>>>>>> the 16 brightness levels which actually work. Add a quirk to do this
>>>>>>>> along with a dmi callback to disable Win8 compatibility.
>>>>>>>
>>>>>>> If we disable the _BQC(i.e. set cap._BQC=0) for these systems, will the
>>>>>>> problem go away? If so, I think perhaps we can put these systems into a
>>>>>>> _BQC quirk table and set cap._BQC=0 for them.
>>>>>>
>>>>>> That helps a little, but we're still left with only 16 of the 101
>>>>>> brightness levels causing any change in brightness. The firmware isn't
>>>>>> rounding the "bad" values or anything like that; it just silently
>>>>>> ignores them.
>>>>>
>>>>> I really wondered, how Windows handled this, it should have the same
>>>>> problem, unless they are not using the acpi video interface?
>>>>
>>>> I can only guess.
>>>>
>>>> I think I remember reading that Windows 8 does smooth backlight
>>>> transitions, so it may well hit every intermediate brightness value.
>>>> Lenovo could also be supplying a driver which rounds values to the
>>>> nearest working value or uses some other interface or something else.
>>>
>>> Just checked; Windows 8 doesn't use the ACPI interface. It seems to have
>>> access to at least 100 distinct brightness levels.
>>>
>>> I'd guess it's using the same interface as
>>> /sys/class/backlight/intel_backlight, which on my system has a
>>> max_brightness of 4438 and all the values seem to be actually distinct,
>>> if not necessarily discernible to the naked eye.
>>
>> Thanks for the information.
>>
>> If all these affected systems have gpu driver's interface, I think we
>> can simply add them to the video_detect_dmi_table so that no acpi
>> backlight interface will be created for them, and gpu's interface will
>> be used by user space and hotkey processing can still be handled by acpi
>> video driver.
>
> I've got two machines here with discrete graphics, one with nvidia and
> one with AMD (neither one is a Lenovo). With the nvidia machine neither
> nouveau nor the proprietary driver registers a backlight device. On the
> AMD machine radeon does register a backlight but the proprietary driver
> does not. So I think quirking away the acpi_video backlight interface
> has potential to leave some users without any backlight control at all.
Then let's try to work around this problem in acpi video driver.
Thanks,
Aaron
>
> Seth
> --
> 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
>
next prev parent reply other threads:[~2013-04-04 11:38 UTC|newest]
Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-11 16:21 [PATCH] ACPI: Disable Windows 8 compatibility for some Lenovo ThinkPads Seth Forshee
2013-02-11 17:52 ` Matthew Garrett
2013-02-11 19:06 ` Seth Forshee
2013-02-11 19:09 ` Matthew Garrett
2013-02-11 19:31 ` Rafael J. Wysocki
2013-02-12 3:05 ` Seth Forshee
2013-02-13 20:32 ` Seth Forshee
2013-02-13 20:55 ` Matthew Garrett
2013-02-13 21:04 ` Ben Jencks
2013-02-13 21:49 ` Seth Forshee
2013-02-13 21:46 ` Seth Forshee
2013-02-13 21:54 ` Matthew Garrett
2013-02-13 22:04 ` Seth Forshee
2013-03-07 19:38 ` Seth Forshee
2013-03-07 19:39 ` [PATCH 1/5] ACPICA: Add interface for getting latest Windows version requested via _OSI Seth Forshee
2013-03-07 19:39 ` [PATCH 2/5] acpi_video: Avoid unnecessary conversions between backlight levels and indexes Seth Forshee
2013-03-07 19:39 ` [PATCH 3/5] acpi_video: Add workaround for broken Windows 8 backlight implementations Seth Forshee
2013-04-04 11:44 ` Aaron Lu
2013-04-04 12:35 ` Seth Forshee
2013-04-04 13:46 ` Aaron Lu
2013-04-04 14:02 ` Seth Forshee
2013-04-04 14:27 ` Aaron Lu
2013-03-07 19:39 ` [PATCH 4/5] acpi_video: Disable use of _BQC when value doesn't match those set through _BCM Seth Forshee
2013-03-07 19:39 ` [PATCH 5/5] acpi_video: Don't handle ACPI brightness notifications by default Seth Forshee
2013-08-02 5:55 ` Aaron Lu
2013-08-02 14:41 ` Rafael J. Wysocki
2013-08-02 14:52 ` Aaron Lu
2013-08-03 0:26 ` Rafael J. Wysocki
2013-08-03 9:46 ` Aaron Lu
2013-08-03 11:23 ` Rafael J. Wysocki
2013-08-03 12:10 ` Aaron Lu
2013-08-03 22:07 ` Rafael J. Wysocki
2013-08-04 1:08 ` Aaron Lu
2013-03-18 21:25 ` [PATCH] ACPI: Disable Windows 8 compatibility for some Lenovo ThinkPads Seth Forshee
2013-04-02 5:18 ` Ben Jencks
2013-04-02 9:15 ` Aaron Lu
2013-04-02 11:23 ` Matthew Garrett
2013-04-02 13:44 ` Aaron Lu
2013-04-02 19:08 ` Matthew Garrett
2013-04-19 12:24 ` Seth Forshee
2013-04-20 22:06 ` Rafael J. Wysocki
2013-04-21 2:29 ` Seth Forshee
2013-04-21 15:46 ` Henrique de Moraes Holschuh
2013-02-13 21:09 ` Ben Jencks
2013-04-01 1:53 ` Aaron Lu
2013-04-01 13:03 ` Seth Forshee
2013-04-02 9:08 ` Aaron Lu
2013-04-02 13:00 ` Seth Forshee
2013-04-02 13:43 ` Aaron Lu
2013-04-03 7:04 ` Ben Jencks
2013-04-03 7:27 ` Aaron Lu
2013-04-03 13:45 ` Seth Forshee
2013-04-04 11:39 ` Aaron Lu [this message]
2013-04-19 3:15 ` Aaron Lu
2013-04-20 22:06 ` Rafael J. Wysocki
2013-04-21 11:07 ` Aaron Lu
2013-04-21 12:11 ` Aaron Lu
2013-04-21 21:42 ` Rafael J. Wysocki
2013-04-22 9:39 ` Aaron Lu
2013-04-22 11:51 ` Rafael J. Wysocki
2013-04-22 12:11 ` Aaron Lu
2013-04-22 13:06 ` Seth Forshee
2013-04-22 13:40 ` Aaron Lu
2013-04-22 13:56 ` Seth Forshee
2013-04-22 14:07 ` Aaron Lu
2013-04-22 15:11 ` Seth Forshee
2013-04-22 2:18 ` joeyli
2013-04-22 10:08 ` Aaron Lu
2013-04-22 12:00 ` joeyli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=515D668E.20102@gmail.com \
--to=aaron.lwe@gmail.com \
--cc=aaron.lu@intel.com \
--cc=ben@bjencks.net \
--cc=dannybaumann@web.de \
--cc=jlee@suse.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=mjg59@srcf.ucam.org \
--cc=rjw@sisk.pl \
--cc=seth.forshee@canonical.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).