diff options
| -rw-r--r-- | drivers/input/keyboard/atkbd.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c index 809a7ddbe3af..95fe0452dae4 100644 --- a/drivers/input/keyboard/atkbd.c +++ b/drivers/input/keyboard/atkbd.c | |||
| @@ -909,6 +909,13 @@ static unsigned int atkbd_amilo_xi3650_forced_release_keys[] = { | |||
| 909 | }; | 909 | }; |
| 910 | 910 | ||
| 911 | /* | 911 | /* |
| 912 | * Soltech TA12 system with broken key release on volume keys and mute key | ||
| 913 | */ | ||
| 914 | static unsigned int atkdb_soltech_ta12_forced_release_keys[] = { | ||
| 915 | 0xa0, 0xae, 0xb0, -1U | ||
| 916 | }; | ||
| 917 | |||
| 918 | /* | ||
| 912 | * atkbd_set_keycode_table() initializes keyboard's keycode table | 919 | * atkbd_set_keycode_table() initializes keyboard's keycode table |
| 913 | * according to the selected scancode set | 920 | * according to the selected scancode set |
| 914 | */ | 921 | */ |
| @@ -1592,6 +1599,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = { | |||
| 1592 | .callback = atkbd_setup_forced_release, | 1599 | .callback = atkbd_setup_forced_release, |
| 1593 | .driver_data = atkbd_amilo_xi3650_forced_release_keys, | 1600 | .driver_data = atkbd_amilo_xi3650_forced_release_keys, |
| 1594 | }, | 1601 | }, |
| 1602 | { | ||
| 1603 | .ident = "Soltech Corporation TA12", | ||
| 1604 | .matches = { | ||
| 1605 | DMI_MATCH(DMI_SYS_VENDOR, "Soltech Corporation"), | ||
| 1606 | DMI_MATCH(DMI_PRODUCT_NAME, "TA12"), | ||
| 1607 | }, | ||
| 1608 | .callback = atkbd_setup_forced_release, | ||
| 1609 | .driver_data = atkdb_soltech_ta12_forced_release_keys, | ||
| 1610 | }, | ||
| 1595 | { } | 1611 | { } |
| 1596 | }; | 1612 | }; |
| 1597 | 1613 | ||
