diff options
-rw-r--r-- | drivers/input/i8042.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/input/i8042.c b/drivers/input/i8042.c index 8575d78d13..f84a8dace8 100644 --- a/drivers/input/i8042.c +++ b/drivers/input/i8042.c @@ -322,6 +322,17 @@ static int kbd_controller_present (void) return in8(I8042_STATUS_REG) != 0xff; } +/* + * Implement a weak default function for boards that optionally + * need to skip the i8042 initialization. + */ +int __board_i8042_skip(void) +{ + /* As default, don't skip */ + return 0; +} +int board_i8042_skip(void) __attribute__((weak, alias("__board_i8042_skip"))); + /******************************************************************************* * * i8042_kbd_init - reset keyboard and init state flags @@ -331,7 +342,7 @@ int i8042_kbd_init (void) int keymap, try; char *penv; - if (!kbd_controller_present()) + if (!kbd_controller_present() || board_i8042_skip()) return -1; #ifdef CONFIG_USE_CPCIDVI |