Skip to content

Commit 955af63

Browse files
tobiasjakobidtor
authored andcommitted
Input: i8042 - add Ayaneo Kun to i8042 quirk table
See the added comment for details. Also fix a typo in the quirk's define. Signed-off-by: Tobias Jakobi <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
1 parent a69ce59 commit 955af63

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

drivers/input/serio/i8042-acpipnpio.h

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ static inline void i8042_write_command(int val)
7676
#define SERIO_QUIRK_PROBE_DEFER BIT(5)
7777
#define SERIO_QUIRK_RESET_ALWAYS BIT(6)
7878
#define SERIO_QUIRK_RESET_NEVER BIT(7)
79-
#define SERIO_QUIRK_DIECT BIT(8)
79+
#define SERIO_QUIRK_DIRECT BIT(8)
8080
#define SERIO_QUIRK_DUMBKBD BIT(9)
8181
#define SERIO_QUIRK_NOLOOP BIT(10)
8282
#define SERIO_QUIRK_NOTIMEOUT BIT(11)
@@ -1332,6 +1332,20 @@ static const struct dmi_system_id i8042_dmi_quirk_table[] __initconst = {
13321332
.driver_data = (void *)(SERIO_QUIRK_NOMUX | SERIO_QUIRK_RESET_ALWAYS |
13331333
SERIO_QUIRK_NOLOOP | SERIO_QUIRK_NOPNP)
13341334
},
1335+
{
1336+
/*
1337+
* The Ayaneo Kun is a handheld device where some the buttons
1338+
* are handled by an AT keyboard. The keyboard is usually
1339+
* detected as raw, but sometimes, usually after a cold boot,
1340+
* it is detected as translated. Make sure that the keyboard
1341+
* is always in raw mode.
1342+
*/
1343+
.matches = {
1344+
DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AYANEO"),
1345+
DMI_MATCH(DMI_BOARD_NAME, "KUN"),
1346+
},
1347+
.driver_data = (void *)(SERIO_QUIRK_DIRECT)
1348+
},
13351349
{ }
13361350
};
13371351

@@ -1655,7 +1669,7 @@ static void __init i8042_check_quirks(void)
16551669
if (quirks & SERIO_QUIRK_RESET_NEVER)
16561670
i8042_reset = I8042_RESET_NEVER;
16571671
}
1658-
if (quirks & SERIO_QUIRK_DIECT)
1672+
if (quirks & SERIO_QUIRK_DIRECT)
16591673
i8042_direct = true;
16601674
if (quirks & SERIO_QUIRK_DUMBKBD)
16611675
i8042_dumbkbd = true;

0 commit comments

Comments
 (0)