[U-Boot] [PATCH 1/1] console: usb: kbd: To fix slow TFTP booting

TFTP booting is slow when a USB keyboard is installed and stdin has usbkbd added. This fix is to change Ctrl-C polling for USB keyboard to every second when NET transfer is running. My previous patch is expected to be put into usb_kbd_testc(). But it went into usb_kbd_getc() after applied. This patch is to put change in correct place.
Signed-off-by: Jim Lin jilin@nvidia.com --- common/usb_kbd.c | 20 ++++++++++---------- 1 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/common/usb_kbd.c b/common/usb_kbd.c index 89e30e8..1ad67ca 100644 --- a/common/usb_kbd.c +++ b/common/usb_kbd.c @@ -354,6 +354,16 @@ static int usb_kbd_testc(void) struct usb_device *usb_kbd_dev; struct usb_kbd_pdata *data;
+#ifdef CONFIG_CMD_NET + /* + * If net_busy_flag is 1, NET transfer is running, + * then we check key-pressed every second (first check may be + * less than 1 second) to improve TFTP booting performance. + */ + if (net_busy_flag && (get_timer(kbd_testc_tms) < CONFIG_SYS_HZ)) + return 0; + kbd_testc_tms = get_timer(0); +#endif dev = stdio_get_by_name(DEVNAME); usb_kbd_dev = (struct usb_device *)dev->priv; data = usb_kbd_dev->privptr; @@ -370,16 +380,6 @@ static int usb_kbd_getc(void) struct usb_device *usb_kbd_dev; struct usb_kbd_pdata *data;
-#ifdef CONFIG_CMD_NET - /* - * If net_busy_flag is 1, NET transfer is running, - * then we check key-pressed every second (first check may be - * less than 1 second) to improve TFTP booting performance. - */ - if (net_busy_flag && (get_timer(kbd_testc_tms) < CONFIG_SYS_HZ)) - return 0; - kbd_testc_tms = get_timer(0); -#endif dev = stdio_get_by_name(DEVNAME); usb_kbd_dev = (struct usb_device *)dev->priv; data = usb_kbd_dev->privptr;

Dear Jim Lin,
TFTP booting is slow when a USB keyboard is installed and stdin has usbkbd added. This fix is to change Ctrl-C polling for USB keyboard to every second when NET transfer is running. My previous patch is expected to be put into usb_kbd_testc(). But it went into usb_kbd_getc() after applied. This patch is to put change in correct place.
Applied, thanks!
Best regards, Marek Vasut

On 08/26/2013 01:51 PM, Marek Vasut wrote:
Dear Jim Lin,
TFTP booting is slow when a USB keyboard is installed and stdin has usbkbd added. This fix is to change Ctrl-C polling for USB keyboard to every second when NET transfer is running. My previous patch is expected to be put into usb_kbd_testc(). But it went into usb_kbd_getc() after applied. This patch is to put change in correct place.
Applied, thanks!
For the record, I tested u-boot-usb/master commit c95e2b9 "console: usb: kbd: To fix slow TFTP booting", and it works for me, and solve the issue that this patch was trying to solve. Thanks.
participants (3)
-
Jim Lin
-
Marek Vasut
-
Stephen Warren