diff --git a/drivers/serial/usbtty.c b/drivers/serial/usbtty.c
index e47cb9a9e724bbb560a3b0f42f0c844dd0bcb867..148d1a6ddd3b17cac525ec7ed48d053b2d0329ae 100644
--- a/drivers/serial/usbtty.c
+++ b/drivers/serial/usbtty.c
@@ -63,7 +63,7 @@
 /*
  * Buffers to hold input and output data
  */
-#define USBTTY_BUFFER_SIZE 256
+#define USBTTY_BUFFER_SIZE 2048
 static circbuf_t usbtty_input;
 static circbuf_t usbtty_output;
 
diff --git a/include/usbdevice.h b/include/usbdevice.h
index 3edaf8bcc268a66212cb56a3dac8d67b4a9aae4b..7037efd33eb0c85dede846b5fd62dc6babf8d708 100644
--- a/include/usbdevice.h
+++ b/include/usbdevice.h
@@ -475,7 +475,9 @@ typedef struct urb_link {
  * function driver to inform it that data has arrived.
  */
 
-#define URB_BUF_SIZE 128 /* in linux we'd malloc this, but in u-boot we prefer static data */
+/* in linux we'd malloc this, but in u-boot we prefer static data */
+#define URB_BUF_SIZE 512
+
 struct urb {
 
 	struct usb_endpoint_instance *endpoint;