diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-07-08 12:32:41 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-07-08 12:32:41 -0400 |
commit | 5e75c5f5d723074b1ceefe916c3005888e431d12 (patch) | |
tree | d929d72d9e4f0abcd74cd65922b35123cd3455d5 /drivers/input/serio | |
parent | d6d4655172f9c5b9402bb453ed9145a7ab5c46d0 (diff) | |
parent | eeafa5ef6de5acf678624a21f7dba7d43ba73845 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: gpio_mouse - use standard driver registration method
Input: mark serio and i8042 as suspended when hibernating too
Input: add support for generic GPIO-based matrix keypad
Input: arrange keyboards alphabetically
Input: gpio-keys - avoid possibility of sleeping in timer function
Input: gpio-keys - revert 'change timer to workqueue'
Input: dm355evm_keys - fix kconfig symbol names
Input: wacom - add DTF720a support and fix rotation on Intuos3
Input: i8042 - more reset quirks for MSI Wind-clone netbooks
Diffstat (limited to 'drivers/input/serio')
-rw-r--r-- | drivers/input/serio/i8042-x86ia64io.h | 28 | ||||
-rw-r--r-- | drivers/input/serio/i8042.c | 7 | ||||
-rw-r--r-- | drivers/input/serio/serio.c | 7 |
3 files changed, 36 insertions, 6 deletions
diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h index fb8a3cd3ffd0..924e8ed7f2cf 100644 --- a/drivers/input/serio/i8042-x86ia64io.h +++ b/drivers/input/serio/i8042-x86ia64io.h | |||
@@ -392,6 +392,34 @@ static struct dmi_system_id __initdata i8042_dmi_reset_table[] = { | |||
392 | DMI_MATCH(DMI_BOARD_VENDOR, "LG Electronics Inc."), | 392 | DMI_MATCH(DMI_BOARD_VENDOR, "LG Electronics Inc."), |
393 | }, | 393 | }, |
394 | }, | 394 | }, |
395 | { | ||
396 | .ident = "Acer Aspire One 150", | ||
397 | .matches = { | ||
398 | DMI_MATCH(DMI_SYS_VENDOR, "Acer"), | ||
399 | DMI_MATCH(DMI_PRODUCT_NAME, "AOA150"), | ||
400 | }, | ||
401 | }, | ||
402 | { | ||
403 | .ident = "Advent 4211", | ||
404 | .matches = { | ||
405 | DMI_MATCH(DMI_SYS_VENDOR, "DIXONSXP"), | ||
406 | DMI_MATCH(DMI_PRODUCT_NAME, "Advent 4211"), | ||
407 | }, | ||
408 | }, | ||
409 | { | ||
410 | .ident = "Medion Akoya Mini E1210", | ||
411 | .matches = { | ||
412 | DMI_MATCH(DMI_SYS_VENDOR, "MEDION"), | ||
413 | DMI_MATCH(DMI_PRODUCT_NAME, "E1210"), | ||
414 | }, | ||
415 | }, | ||
416 | { | ||
417 | .ident = "Mivvy M310", | ||
418 | .matches = { | ||
419 | DMI_MATCH(DMI_SYS_VENDOR, "VIOOO"), | ||
420 | DMI_MATCH(DMI_PRODUCT_NAME, "N10"), | ||
421 | }, | ||
422 | }, | ||
395 | { } | 423 | { } |
396 | }; | 424 | }; |
397 | 425 | ||
diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c index f919bf57293c..582245c497eb 100644 --- a/drivers/input/serio/i8042.c +++ b/drivers/input/serio/i8042.c | |||
@@ -934,10 +934,11 @@ static bool i8042_suspended; | |||
934 | 934 | ||
935 | static int i8042_suspend(struct platform_device *dev, pm_message_t state) | 935 | static int i8042_suspend(struct platform_device *dev, pm_message_t state) |
936 | { | 936 | { |
937 | if (!i8042_suspended && state.event == PM_EVENT_SUSPEND) { | 937 | if (!i8042_suspended && state.event == PM_EVENT_SUSPEND) |
938 | i8042_controller_reset(); | 938 | i8042_controller_reset(); |
939 | i8042_suspended = true; | 939 | |
940 | } | 940 | i8042_suspended = state.event == PM_EVENT_SUSPEND || |
941 | state.event == PM_EVENT_FREEZE; | ||
941 | 942 | ||
942 | return 0; | 943 | return 0; |
943 | } | 944 | } |
diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c index fb17573f8f2d..d66f4944f2a0 100644 --- a/drivers/input/serio/serio.c +++ b/drivers/input/serio/serio.c | |||
@@ -935,10 +935,11 @@ static int serio_suspend(struct device *dev, pm_message_t state) | |||
935 | { | 935 | { |
936 | struct serio *serio = to_serio_port(dev); | 936 | struct serio *serio = to_serio_port(dev); |
937 | 937 | ||
938 | if (!serio->suspended && state.event == PM_EVENT_SUSPEND) { | 938 | if (!serio->suspended && state.event == PM_EVENT_SUSPEND) |
939 | serio_cleanup(serio); | 939 | serio_cleanup(serio); |
940 | serio->suspended = true; | 940 | |
941 | } | 941 | serio->suspended = state.event == PM_EVENT_SUSPEND || |
942 | state.event == PM_EVENT_FREEZE; | ||
942 | 943 | ||
943 | return 0; | 944 | return 0; |
944 | } | 945 | } |