Bug 45421

Summary: [BISECTED]toshiba_acpi module disables Fn+... backlight brightness keys
Product: Drivers Reporter: Eugen Zagorodniy (e.zagorodniy)
Component: Platform_x86Assignee: Matthew Garrett (mjg59-kernel)
Status: NEW ---    
Severity: normal CC: alan.pater, alan, e.zagorodniy, lenb, seth
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 3.4.7 Subsystem:
Regression: Yes Bisected commit-id:

Description Eugen Zagorodniy 2012-08-01 20:29:07 UTC
Steps to reproduce (Toshiba Satellite R630 laptop, ArchLinux x86_64):

1. modprobe toshiba_backlight (actualy it's autoloaded during boot),
2. observe Fn+F6 and Fn+F5 keys not affecting backlight brightness.

This happens in all following cases:

  - no acpi_backlight in kernel boot line,
  - acpi_backlight=vendor,
  - acpi_backlight=legacy.

It's still possible to adjust brightness via /sys/class/backlight/ interface.
ACPI events on key presses are still happening.
Once toshiba_acpi module is loaded, unloading it without reboot doesn't help. After loading & unloading no ACPI events will be generated anymore.

Blacklisting toshiba_acpi module fixes the problem with either options:

  - no acpi_backlight in kernel boot line,
  - or acpi_backlight=legacy.

Having acpi_backlight=vendor causes the same problem even with blacklisted toshiba_acpi.

Not sure if it is relevant, but #43168 and #21012 are describing somehow similar issues.
Comment 1 Eugen Zagorodniy 2012-08-06 13:02:23 UTC
I have run bisect and found out commit introducing the problem:

commit 29cd293f9f8cd76444657622980010b9364b1de6
Author: Seth Forshee <seth.forshee@canonical.com>
Date:   Wed Jan 18 13:44:09 2012 -0600

    toshiba_acpi: Support alternate hotkey interfaces
    
    There are two types of problems that prevent hotkeys from working
    on many of the machines supported by toshiba_acpi. The first of
    these is the lack of a functioning SCI for hotkey events. For these
    machines it is possible to filter the Fn keypresses from the
    keyboard and generate a notification by executing the ACPI NTFY
    method.
    
    The second problem is a lack of support for HCI_SYSTEM_EVENT, which
    is used for reading the hotkey scancodes. On these machines the
    scancodes can be read by executing the ACPI NTFY method.
    
    This patch fixes both problems by installing an i8042 filter when
    the NTFY method is present to generate notifications and by
    detecting which of INFO or HCI_SYSTEM_EVENT is supported for
    reading scancodes. If neither method of reading scancodes is
    supported, the hotkey input device is not registered.
    
    Signed-off-by: Azael Avalos <coproscefalo@gmail.com>
    Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
    Signed-off-by: Matthew Garrett <mjg@redhat.com>

Please let me know if I could provide additional useful information.