summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: ef94f7f)
raw | patch | inline | side by side (parent: ef94f7f)
author | Gabe Black <gabeblack@chromium.org> | |
Fri, 12 Oct 2012 14:02:02 +0000 (14:02 +0000) | ||
committer | Tom Rini <trini@ti.com> | |
Fri, 19 Oct 2012 22:25:43 +0000 (15:25 -0700) |
This change adds a board overridable function which can be used to decide
whether or not to initialize the i8042 keyboard controller. On systems where
it isn't actually connected to anything, this can save a significant amount of
boot time.
On Stumpy, this saves about 200ms on boot.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
whether or not to initialize the i8042 keyboard controller. On systems where
it isn't actually connected to anything, this can save a significant amount of
boot time.
On Stumpy, this saves about 200ms on boot.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@ti.com>
drivers/input/i8042.c | patch | blob | history |
diff --git a/drivers/input/i8042.c b/drivers/input/i8042.c
index 6839c6bac5b1128d63ecbcbd2336879942f00e75..3a4c467c59c5f4645e1051f15a53d05bf5ee25d7 100644 (file)
--- a/drivers/input/i8042.c
+++ b/drivers/input/i8042.c
/* includes */
#include <common.h>
+#include <linux/compiler.h>
#ifdef CONFIG_USE_CPCIDVI
extern u8 gt_cpcidvi_in8(u32 offset);
return in8(I8042_STATUS_REG) != 0xff;
}
+/*
+ * Implement a weak default function for boards that optionally
+ * need to skip the i8042 initialization.
+ */
+int __weak board_i8042_skip(void)
+{
+ /* As default, don't skip */
+ return 0;
+}
+
/*******************************************************************************
*
* i8042_kbd_init - reset keyboard and init state flags
int keymap, try;
char *penv;
- if (!kbd_controller_present())
+ if (!kbd_controller_present() || board_i8042_skip())
return -1;
#ifdef CONFIG_USE_CPCIDVI