Input: i8042 - set up shared ps2_cmd_mutex for AUX ports
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Wed, 17 Aug 2016 00:38:54 +0000 (17:38 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Sun, 20 Nov 2016 01:01:33 +0000 (01:01 +0000)
commit 47af45d684b5f3ae000ad448db02ce4f13f73273 upstream.

The commit 4097461897df ("Input: i8042 - break load dependency ...")
correctly set up ps2_cmd_mutex pointer for the KBD port but forgot to do
the same for AUX port(s), which results in communication on KBD and AUX
ports to clash with each other.

Fixes: 4097461897df ("Input: i8042 - break load dependency ...")
Reported-by: Bruno Wolff III <bruno@wolff.to>
Tested-by: Bruno Wolff III <bruno@wolff.to>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/input/serio/i8042.c

index 514553b..1284b92 100644 (file)
@@ -1249,6 +1249,7 @@ static int __init i8042_create_aux_port(int idx)
        serio->write            = i8042_aux_write;
        serio->start            = i8042_start;
        serio->stop             = i8042_stop;
+       serio->ps2_cmd_mutex    = &i8042_mutex;
        serio->port_data        = port;
        serio->dev.parent       = &i8042_platform_device->dev;
        if (idx < 0) {