Message ID | 1377519669-4723-1-git-send-email-jilin@nvidia.com |
---|---|
State | Accepted |
Delegated to: | Marek Vasut |
Headers | show |
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.
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;
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(-)