summaryrefslogtreecommitdiffstats
path: root/firmware/usbstack
diff options
context:
space:
mode:
authorFrank Gevaerts <frank@gevaerts.be>2009-05-20 16:57:17 +0000
committerFrank Gevaerts <frank@gevaerts.be>2009-05-20 16:57:17 +0000
commitfba4be213f399f19933aadcce25498ea1fb0c176 (patch)
treec74268b3625e31948cd5cac75bdbe831af2ddeb9 /firmware/usbstack
parent106d2ebd072648482c739d35f6a9f9a0cdfa18e5 (diff)
downloadrockbox-fba4be213f399f19933aadcce25498ea1fb0c176.tar.gz
rockbox-fba4be213f399f19933aadcce25498ea1fb0c176.zip
Don't force double-buffering for sd devices. They apparently are not faster with it, ans possibly actually slower
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20999 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/usbstack')
-rw-r--r--firmware/usbstack/usb_storage.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/firmware/usbstack/usb_storage.c b/firmware/usbstack/usb_storage.c
index 0d06221750..b498311014 100644
--- a/firmware/usbstack/usb_storage.c
+++ b/firmware/usbstack/usb_storage.c
@@ -53,10 +53,16 @@
* wouldn't buy us anything.
* Due to being the double-buffering system used, using a smaller write buffer
* ends up being more efficient. Measurements have shown that 24k to 28k is
- * optimal
+ * optimal, except for sd devices that apparently don't gain anything from
+ * double-buffering
*/
#define READ_BUFFER_SIZE (1024*64)
+
+#if (CONFIG_STORAGE & STORAGE_SD)
+#define WRITE_BUFFER_SIZE (1024*64)
+#else
#define WRITE_BUFFER_SIZE (1024*24)
+#endif
#define ALLOCATE_BUFFER_SIZE (2*MAX(READ_BUFFER_SIZE,WRITE_BUFFER_SIZE))