summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2009-01-21 20:52:35 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2009-01-21 20:52:35 +0000
commit868a4bdbc3f08a7c9d26a84bb67a5b3e083ffcec (patch)
tree0b3c94889bdcecb6648bdf72aa2a6c6d8dba5738 /firmware
parentae351903a65393477f061a2eb934c8d8a6a605a6 (diff)
downloadrockbox-868a4bdbc3f08a7c9d26a84bb67a5b3e083ffcec.tar.gz
rockbox-868a4bdbc3f08a7c9d26a84bb67a5b3e083ffcec.zip
Fix RAM disk when no audio buffer is available
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19814 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/usbstack/usb_storage.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/firmware/usbstack/usb_storage.c b/firmware/usbstack/usb_storage.c
index f8d8f4b3ff..85499c1bbd 100644
--- a/firmware/usbstack/usb_storage.c
+++ b/firmware/usbstack/usb_storage.c
@@ -403,6 +403,10 @@ void usb_storage_init_connection(void)
403 static unsigned char _transfer_buffer[BUFFER_SIZE*2] 403 static unsigned char _transfer_buffer[BUFFER_SIZE*2]
404 USB_DEVBSS_ATTR __attribute__((aligned(32))); 404 USB_DEVBSS_ATTR __attribute__((aligned(32)));
405 tb.transfer_buffer = (void *)_transfer_buffer; 405 tb.transfer_buffer = (void *)_transfer_buffer;
406#ifdef USB_USE_RAMDISK
407 static unsigned char _ramdisk_buffer[RAMDISK_SIZE*SECTOR_SIZE];
408 ramdisk_buffer = _ramdisk_buffer;
409#endif
406#else 410#else
407 /* TODO : check if bufsize is at least 32K ? */ 411 /* TODO : check if bufsize is at least 32K ? */
408 size_t bufsize; 412 size_t bufsize;
@@ -412,10 +416,10 @@ void usb_storage_init_connection(void)
412 tb.transfer_buffer = 416 tb.transfer_buffer =
413 (void *)UNCACHED_ADDR((unsigned int)(audio_buffer + 31) & 0xffffffe0); 417 (void *)UNCACHED_ADDR((unsigned int)(audio_buffer + 31) & 0xffffffe0);
414 invalidate_icache(); 418 invalidate_icache();
415#endif
416#ifdef USB_USE_RAMDISK 419#ifdef USB_USE_RAMDISK
417 ramdisk_buffer = tb.transfer_buffer + BUFFER_SIZE*2; 420 ramdisk_buffer = tb.transfer_buffer + BUFFER_SIZE*2;
418#endif 421#endif
422#endif
419 usb_drv_recv(ep_out, tb.transfer_buffer, 1024); 423 usb_drv_recv(ep_out, tb.transfer_buffer, 1024);
420} 424}
421 425