public inbox for platform-driver-x86@vger.kernel.org
 help / color / mirror / Atom feed
* thinkpad_acpi: unhandled HKEY event 0x6050
@ 2013-04-22 19:25 Ben Jencks
  2013-04-22 21:13 ` [ibm-acpi-devel] " Henrique de Moraes Holschuh
  0 siblings, 1 reply; 2+ messages in thread
From: Ben Jencks @ 2013-04-22 19:25 UTC (permalink / raw)
  To: Henrique de Moraes Holschuh, Matthew Garrett, ibm-acpi-devel,
	platform-driver-x86

On a Thinkpad T530, BIOS 2.07:

Event 0x6050 is generated when there's a brightness change generated by
the firmware (not from the kernel through _BCM). This only happens when
the ACPI video driver is not loaded, or acpi_backlight=vendor.
(actually, when _BCL has not been called).

It should probably be ignored, like TP_HKEY_EV_BRGHT_CHANGED (0x5010).

Whether _BCL has been called is stored in variable \NBCF.

ACPI dump is here:
http://www.bjencks.net/t530/acpidump.out.xz

The full logic in the firmware appears to be:

When a brightness key is pressed:
  If the key is unmasked:
    Report the key to thinkpad-acpi
  If _BCL has been called:
    Report the key (video event) to acpi video
  Else:
    Adjust the brightness
    Report event 0x6050 to thinkpad-acpi

This results in correct behavior when acpi video is loaded, since
thinkpad-acpi automatically masks the brightness keys in that case.
However, without acpi video the keys are unmasked, so keypresses
generate two brightness changes -- one from the firmware and one from
userspace.

It seems like the brightness keys should always be masked on this type
of firmware.

-Ben Jencks

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [ibm-acpi-devel] thinkpad_acpi: unhandled HKEY event 0x6050
  2013-04-22 19:25 thinkpad_acpi: unhandled HKEY event 0x6050 Ben Jencks
@ 2013-04-22 21:13 ` Henrique de Moraes Holschuh
  0 siblings, 0 replies; 2+ messages in thread
From: Henrique de Moraes Holschuh @ 2013-04-22 21:13 UTC (permalink / raw)
  To: Ben Jencks
  Cc: Henrique de Moraes Holschuh, Matthew Garrett, ibm-acpi-devel,
	platform-driver-x86

On Mon, 22 Apr 2013, Ben Jencks wrote:
> On a Thinkpad T530, BIOS 2.07:
> 
> Event 0x6050 is generated when there's a brightness change generated by
> the firmware (not from the kernel through _BCM). This only happens when
> the ACPI video driver is not loaded, or acpi_backlight=vendor.
> (actually, when _BCL has not been called).
> 
> It should probably be ignored, like TP_HKEY_EV_BRGHT_CHANGED (0x5010).
> 
> Whether _BCL has been called is stored in variable \NBCF.
> 
> ACPI dump is here:
> http://www.bjencks.net/t530/acpidump.out.xz
> 
> The full logic in the firmware appears to be:
> 
> When a brightness key is pressed:
>   If the key is unmasked:
>     Report the key to thinkpad-acpi
>   If _BCL has been called:
>     Report the key (video event) to acpi video
>   Else:
>     Adjust the brightness
>     Report event 0x6050 to thinkpad-acpi
> 
> This results in correct behavior when acpi video is loaded, since
> thinkpad-acpi automatically masks the brightness keys in that case.
> However, without acpi video the keys are unmasked, so keypresses
> generate two brightness changes -- one from the firmware and one from
> userspace.
> 
> It seems like the brightness keys should always be masked on this type
> of firmware.

Thanks for the detailed report!

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-04-22 21:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-22 19:25 thinkpad_acpi: unhandled HKEY event 0x6050 Ben Jencks
2013-04-22 21:13 ` [ibm-acpi-devel] " Henrique de Moraes Holschuh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox