mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
input: Provide a board specific mechanism to decide whether to skip i8042 init
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>
This commit is contained in:
parent
ef94f7fa64
commit
48edb304d0
1 changed files with 12 additions and 1 deletions
|
@ -26,6 +26,7 @@
|
|||
/* includes */
|
||||
|
||||
#include <common.h>
|
||||
#include <linux/compiler.h>
|
||||
|
||||
#ifdef CONFIG_USE_CPCIDVI
|
||||
extern u8 gt_cpcidvi_in8(u32 offset);
|
||||
|
@ -320,6 +321,16 @@ 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 __weak board_i8042_skip(void)
|
||||
{
|
||||
/* As default, don't skip */
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
*
|
||||
* i8042_kbd_init - reset keyboard and init state flags
|
||||
|
@ -329,7 +340,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
|
||||
|
|
Loading…
Add table
Reference in a new issue