diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2016-05-10 14:49:55 +0300 |
---|---|---|
committer | Darren Hart <dvhart@linux.intel.com> | 2016-05-27 11:47:53 -0700 |
commit | e27ffe7e41b1dc747fd1d32d52f7453137f89ed9 (patch) | |
tree | f7a33509a1dd5b8659500b06a6fb723d7540e375 /drivers | |
parent | ddd9357f6017a8c61a20685feab5ce9eee635f6c (diff) | |
download | op-kernel-dev-e27ffe7e41b1dc747fd1d32d52f7453137f89ed9.zip op-kernel-dev-e27ffe7e41b1dc747fd1d32d52f7453137f89ed9.tar.gz |
surfacepro3_button: Add a warning when switching to tablet mode
Microsoft Surface Book has a tablet mode button. Print another message
once on this event instead of repeating "Unknown event...".
Unfortunately, proper support involves the _DSM method, which is not a
discoverable interface. Just print a warning for now.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/platform/x86/surfacepro3_button.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/platform/x86/surfacepro3_button.c b/drivers/platform/x86/surfacepro3_button.c index 700e0fa..6505c97 100644 --- a/drivers/platform/x86/surfacepro3_button.c +++ b/drivers/platform/x86/surfacepro3_button.c @@ -24,6 +24,8 @@ #define SURFACE_BUTTON_OBJ_NAME "VGBI" #define SURFACE_BUTTON_DEVICE_NAME "Surface Pro 3/4 Buttons" +#define SURFACE_BUTTON_NOTIFY_TABLET_MODE 0xc8 + #define SURFACE_BUTTON_NOTIFY_PRESS_POWER 0xc6 #define SURFACE_BUTTON_NOTIFY_RELEASE_POWER 0xc7 @@ -33,7 +35,7 @@ #define SURFACE_BUTTON_NOTIFY_PRESS_VOLUME_UP 0xc0 #define SURFACE_BUTTON_NOTIFY_RELEASE_VOLUME_UP 0xc1 -#define SURFACE_BUTTON_NOTIFY_PRESS_VOLUME_DOWN 0xc2 +#define SURFACE_BUTTON_NOTIFY_PRESS_VOLUME_DOWN 0xc2 #define SURFACE_BUTTON_NOTIFY_RELEASE_VOLUME_DOWN 0xc3 ACPI_MODULE_NAME("surface pro 3 button"); @@ -105,9 +107,12 @@ static void surface_button_notify(struct acpi_device *device, u32 event) case SURFACE_BUTTON_NOTIFY_RELEASE_VOLUME_DOWN: key_code = KEY_VOLUMEDOWN; break; + case SURFACE_BUTTON_NOTIFY_TABLET_MODE: + dev_warn_once(&device->dev, "Tablet mode is not supported\n"); + break; default: dev_info_ratelimited(&device->dev, - "Unsupported event [0x%x]\n", event); + "Unsupported event [0x%x]\n", event); break; } input = button->input; |