Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Input: i8042 - remove unneeded call to i8042_interrupt()

Remove call to i8042_interrupt() from i8042_aux_write(). According
to Vojtech it may cause problems with older controllers if it is
called right after real interrupt. Also it is not needed anymore
since we register IRQs early and not waiting for serio ports to
be opened.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

+3 -18
+3 -18
drivers/input/serio/i8042.c
··· 255 255 static int i8042_aux_write(struct serio *serio, unsigned char c) 256 256 { 257 257 struct i8042_port *port = serio->port_data; 258 - int retval; 259 258 260 - /* 261 - * Send the byte out. 262 - */ 263 - 264 - if (port->mux == -1) 265 - retval = i8042_command(&c, I8042_CMD_AUX_SEND); 266 - else 267 - retval = i8042_command(&c, I8042_CMD_MUX_SEND + port->mux); 268 - 269 - /* 270 - * Make sure the interrupt happens and the character is received even 271 - * in the case the IRQ isn't wired, so that we can receive further 272 - * characters later. 273 - */ 274 - 275 - i8042_interrupt(0, NULL); 276 - return retval; 259 + return i8042_command(&c, port->mux == -1 ? 260 + I8042_CMD_AUX_SEND : 261 + I8042_CMD_MUX_SEND + port->mux); 277 262 } 278 263 279 264 /*