From b2117739eda5174f7365e8918e708ac256797974 Mon Sep 17 00:00:00 2001 From: Channagoud Kadabi Date: Wed, 5 Nov 2014 16:59:27 -0800 Subject: system: core: fastboot: Increase USB protocol buffer size to 1024 With USB3.0 SS support the max packet size supported by USB protocol is 1024 bytes. When connected to a USB device in SuperSpeed, if only 512 bytes are sent at a time the device would interpret each transfer as a short packet and slows down overall throughput. To accommodate for SuperSpeed USB bulk endpoints, increase the buffer size to 1024. Change-Id: I4f447fe38045bc0008e2d6dd3f36c2d6819d6c15 --- fastboot/fastboot_protocol.txt | 4 ++-- fastboot/protocol.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'fastboot') diff --git a/fastboot/fastboot_protocol.txt b/fastboot/fastboot_protocol.txt index 2248992..37b1959 100644 --- a/fastboot/fastboot_protocol.txt +++ b/fastboot/fastboot_protocol.txt @@ -12,8 +12,8 @@ Basic Requirements ------------------ * Two bulk endpoints (in, out) are required -* Max packet size must be 64 bytes for full-speed and 512 bytes for - high-speed USB +* Max packet size must be 64 bytes for full-speed, 512 bytes for + high-speed and 1024 bytes for Super Speed USB. * The protocol is entirely host-driven and synchronous (unlike the multi-channel, bi-directional, asynchronous ADB protocol) diff --git a/fastboot/protocol.c b/fastboot/protocol.c index 84e9837..10a84c1 100644 --- a/fastboot/protocol.c +++ b/fastboot/protocol.c @@ -216,7 +216,7 @@ int fb_download_data(usb_handle *usb, const void *data, unsigned size) } } -#define USB_BUF_SIZE 512 +#define USB_BUF_SIZE 1024 static char usb_buf[USB_BUF_SIZE]; static int usb_buf_len; -- cgit v1.1