summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorJim Lin <jilin@nvidia.com>2013-08-26 20:21:09 +0800
committerMarek Vasut <marex@denx.de>2013-08-26 21:56:35 +0200
commitc95e2b9eaeadc0f985030ffa0638278acc2d8727 (patch)
treed41f61627d661f20ee45fda54112251e63983f8b /common
parent07551f23434f35b67aa8e6cf5ccd68ca417c73e6 (diff)
downloadtalos-obmc-uboot-c95e2b9eaeadc0f985030ffa0638278acc2d8727.tar.gz
talos-obmc-uboot-c95e2b9eaeadc0f985030ffa0638278acc2d8727.zip
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>
Diffstat (limited to 'common')
-rw-r--r--common/usb_kbd.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/common/usb_kbd.c b/common/usb_kbd.c
index 89e30e88fb..1ad67caf13 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;
OpenPOWER on IntegriCloud