Hi Simon, On Sat, Aug 22, 2015 at 7:27 AM, Simon Glass <s...@chromium.org> wrote: > Hi Bin, > > On 21 August 2015 at 01:18, Bin Meng <bmeng...@gmail.com> wrote: >> - Remove unused routines i8042_flush() and i8042_disable() >> - Remove unused CONFIG_USE_CPCIDVI wrapped codes >> - Remove __weak board_i8042_skip() >> >> Signed-off-by: Bin Meng <bmeng...@gmail.com> >> Acked-by: Simon Glass <s...@chromium.org> >> >> --- >> >> Changes in v2: >> - Split the removing of unused codes into this patch >> >> drivers/input/i8042.c | 67 >> +-------------------------------------------------- >> include/i8042.h | 13 ---------- >> 2 files changed, 1 insertion(+), 79 deletions(-) >> >> diff --git a/drivers/input/i8042.c b/drivers/input/i8042.c >> index 1769c5e..8401181 100644 >> --- a/drivers/input/i8042.c >> +++ b/drivers/input/i8042.c >> @@ -10,16 +10,6 @@ >> /* includes */ >> >> #include <common.h> >> -#include <linux/compiler.h> >> - >> -#ifdef CONFIG_USE_CPCIDVI >> -extern u8 gt_cpcidvi_in8(u32 offset); >> -extern void gt_cpcidvi_out8(u32 offset, u8 data); >> - >> -#define in8(a) gt_cpcidvi_in8(a) >> -#define out8(a, b) gt_cpcidvi_out8(a, b) >> -#endif > > Yes good to drop that. Can you also please drop it (perhaps separate > patch) in drivers/video/ct69000.c?
Yes, will do in v3. > >> - >> #include <i8042.h> >> >> /* defines */ >> @@ -305,54 +295,6 @@ 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; >> -} >> - >> -void i8042_flush(void) >> -{ >> - int timeout; >> - >> - /* >> - * The delay is to give the keyboard controller some time to fill the >> - * next byte. >> - */ >> - while (1) { >> - timeout = 100; /* wait for no longer than 100us */ >> - while (timeout > 0 && !(in8(I8042_STATUS_REG) & 0x01)) { >> - udelay(1); >> - timeout--; >> - } >> - >> - /* Try to pull next byte if not timeout. */ >> - if (in8(I8042_STATUS_REG) & 0x01) >> - in8(I8042_DATA_REG); >> - else >> - break; >> - } >> -} >> - >> -int i8042_disable(void) >> -{ >> - if (kbd_input_empty() == 0) >> - return -1; >> - >> - /* Disable keyboard */ >> - out8(I8042_COMMAND_REG, 0xad); >> - >> - if (kbd_input_empty() == 0) >> - return -1; >> - >> - return 0; >> -} >> - >> - >> >> /******************************************************************************* >> * >> * i8042_kbd_init - reset keyboard and init state flags >> @@ -362,16 +304,9 @@ int i8042_kbd_init(void) >> int keymap, try; >> char *penv; >> >> - if (!kbd_controller_present() || board_i8042_skip()) >> + if (!kbd_controller_present()) >> return -1; >> >> -#ifdef CONFIG_USE_CPCIDVI >> - penv = getenv("console"); >> - if (penv != NULL) { >> - if (strncmp(penv, "serial", 7) == 0) >> - return -1; >> - } >> -#endif >> /* Init keyboard device (default US layout) */ >> keymap = KBD_US; >> penv = getenv("keymap"); >> diff --git a/include/i8042.h b/include/i8042.h >> index 58c85ec..e68b8d8 100644 >> --- a/include/i8042.h >> +++ b/include/i8042.h >> @@ -59,19 +59,6 @@ enum { >> >> /* exports */ >> >> -/** >> - * Flush all buffer from keyboard controller to host. >> - */ >> -void i8042_flush(void); >> - >> -/** >> - * Disables the keyboard so that key strokes no longer generate scancodes to >> - * the host. >> - * >> - * @return 0 if ok, -1 if keyboard input was found while disabling >> - */ >> -int i8042_disable(void); >> - >> struct stdio_dev; >> >> int i8042_kbd_init(void); >> -- >> 1.8.2.1 >> > > For the moment I'd like to keep these functions. They are used for Chrome OS: I will keep i8042_flush() and i8042_disable() in v3. > > /* Disable keyboard and flush buffer so that further key strokes > * won't interfere kernel driver init. */ > #ifdef CONFIG_I8042_KBD > if (i8042_disable()) > VBDEBUG("i8042_disable() failed. fine, continue.\n"); > i8042_flush(); > #endif > > int board_i8042_skip(void) Would you also like to keep board_i8042_skip()? > { > struct vboot_flag_details devsw; > > vboot_flag_fetch(VBOOT_FLAG_DEVELOPER, &devsw); > if (devsw.value) > return 0; > > return fdtdec_get_config_int(gd->fdt_blob, "skip-i8042", 0); > } > > I'm sure these can be done in a better way at some point, and in the > meantime I'll add some code to use them in coreboot (looks like there > are a few patches I did not upstream). > Regards, Bin _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot