Input: i8042 - print debug data when testing AUX IRQ delivery
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 9 Oct 2009 03:58:13 +0000 (20:58 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 9 Oct 2009 03:59:54 +0000 (20:59 -0700)
Sometimes it is not clear why IRQ delivery test failed so let's
add some debug printks so we know the exact reason.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
drivers/input/serio/i8042.c

index bc56e52b945f68c8e0fa604a7d88659dfa77fc23..a31578170cccd301cb141e1fbbdde76d4783bceb 100644 (file)
@@ -609,6 +609,8 @@ static irqreturn_t __init i8042_aux_test_irq(int irq, void *dev_id)
        str = i8042_read_status();
        if (str & I8042_STR_OBF) {
                data = i8042_read_data();
+               dbg("%02x <- i8042 (aux_test_irq, %s)",
+                       data, str & I8042_STR_AUXDATA ? "aux" : "kbd");
                if (i8042_irq_being_tested &&
                    data == 0xa5 && (str & I8042_STR_AUXDATA))
                        complete(&i8042_aux_irq_delivered);
@@ -750,6 +752,7 @@ static int __init i8042_check_aux(void)
  * AUX IRQ was never delivered so we need to flush the controller to
  * get rid of the byte we put there; otherwise keyboard may not work.
  */
+               dbg("     -- i8042 (aux irq test timeout)");
                i8042_flush();
                retval = -1;
        }