Here is an extract from drivers/input/serio/i8042.c: > > static int i8042_flush(void) > { > unsigned long flags; > unsigned char data, str; > int i = 0; > > spin_lock_irqsave(&i8042_lock, flags); > > while (((str = i8042_read_status()) & I8042_STR_OBF) && (i < I8042_BUFFER_SIZE)) { > udelay(50); > data = i8042_read_data(); > i++; > dbg("%02x <- i8042 (flush, %s)\n", > data, str & I8042_STR_AUXDATA ? "aux" : "kbd"); > } > > spin_unlock_irqrestore(&i8042_lock, flags); > > return i; > } > > static int i8042_controller_check(void) > { > if (i8042_flush() == I8042_BUFFER_SIZE) { Doesn't it panic needlessly, while the buffer was initially full? > pr_err("No controller found\n"); > return -ENODEV; > } > > return 0; > } -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html