summaryrefslogtreecommitdiffstats
path: root/drivers/platform
diff options
context:
space:
mode:
authorAzael Avalos <coproscefalo@gmail.com>2014-12-05 04:22:47 +0100
committerDarren Hart <dvhart@linux.intel.com>2014-12-03 19:10:18 +0100
commit805469053ba9dc3c14ebbc8287f2c051ba848aa4 (patch)
tree1e38684e821250c9e77da9761033893a6ca70ec1 /drivers/platform
parenttoshiba_acpi: Change notify funtion to handle more events (diff)
downloadlinux-805469053ba9dc3c14ebbc8287f2c051ba848aa4.tar.xz
linux-805469053ba9dc3c14ebbc8287f2c051ba848aa4.zip
toshiba_acpi: Add keyboard backlight mode change event
A previous patch added support to handle more events. This patch adds support to update the sysfs group whenever we receive a 0x92 event, which indicates a change in the keyboard backlight mode, removing the update group code from toshiba_kbd_bl_mode_store, as it is no longer needed there. Signed-off-by: Azael Avalos <coproscefalo@gmail.com> Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Diffstat (limited to 'drivers/platform')
-rw-r--r--drivers/platform/x86/toshiba_acpi.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/platform/x86/toshiba_acpi.c b/drivers/platform/x86/toshiba_acpi.c
index 01e836987683..fc34a71866ed 100644
--- a/drivers/platform/x86/toshiba_acpi.c
+++ b/drivers/platform/x86/toshiba_acpi.c
@@ -1394,12 +1394,6 @@ static ssize_t toshiba_kbd_bl_mode_store(struct device *dev,
if (ret)
return ret;
- /* Update sysfs entries on successful mode change*/
- ret = sysfs_update_group(&toshiba->acpi_dev->dev.kobj,
- &toshiba_attr_group);
- if (ret)
- return ret;
-
toshiba->kbd_mode = mode;
}
@@ -2009,11 +2003,19 @@ error:
static void toshiba_acpi_notify(struct acpi_device *acpi_dev, u32 event)
{
struct toshiba_acpi_dev *dev = acpi_driver_data(acpi_dev);
+ int ret;
switch (event) {
case 0x80: /* Hotkeys and some system events */
toshiba_acpi_process_hotkeys(dev);
break;
+ case 0x92: /* Keyboard backlight mode changed */
+ /* Update sysfs entries */
+ ret = sysfs_update_group(&acpi_dev->dev.kobj,
+ &toshiba_attr_group);
+ if (ret)
+ pr_err("Unable to update sysfs entries\n");
+ break;
case 0x81: /* Unknown */
case 0x82: /* Unknown */
case 0x83: /* Unknown */