diff options
author | Frank Gevaerts <frank@gevaerts.be> | 2008-12-13 14:49:44 +0000 |
---|---|---|
committer | Frank Gevaerts <frank@gevaerts.be> | 2008-12-13 14:49:44 +0000 |
commit | 19dfe330a1e48800a3f3ee73b9d1ee9266e87e2a (patch) | |
tree | b63b8a138edf6364ed6e47acc61cc0e71b92a4e9 | |
parent | e2b69ddffb9e731ef6c1bb1b704fe9038e999817 (diff) | |
download | rockbox-19dfe330a1e48800a3f3ee73b9d1ee9266e87e2a.tar.gz rockbox-19dfe330a1e48800a3f3ee73b9d1ee9266e87e2a.zip |
Add a disconnect handler for usb storage. It doesn't do anything yet, but it will apparently be needed to reset the audio buffer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19418 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | firmware/usbstack/usb_core.c | 2 | ||||
-rw-r--r-- | firmware/usbstack/usb_storage.c | 5 | ||||
-rw-r--r-- | firmware/usbstack/usb_storage.h | 1 |
3 files changed, 7 insertions, 1 deletions
diff --git a/firmware/usbstack/usb_core.c b/firmware/usbstack/usb_core.c index 72900d830f..ea5d6590f6 100644 --- a/firmware/usbstack/usb_core.c +++ b/firmware/usbstack/usb_core.c | |||
@@ -187,7 +187,7 @@ static struct usb_class_driver drivers[USB_NUM_DRIVERS] = | |||
187 | .get_config_descriptor = usb_storage_get_config_descriptor, | 187 | .get_config_descriptor = usb_storage_get_config_descriptor, |
188 | .init_connection = usb_storage_init_connection, | 188 | .init_connection = usb_storage_init_connection, |
189 | .init = usb_storage_init, | 189 | .init = usb_storage_init, |
190 | .disconnect = NULL, | 190 | .disconnect = usb_storage_disconnect, |
191 | .transfer_complete = usb_storage_transfer_complete, | 191 | .transfer_complete = usb_storage_transfer_complete, |
192 | .control_request = usb_storage_control_request, | 192 | .control_request = usb_storage_control_request, |
193 | #ifdef HAVE_HOTSWAP | 193 | #ifdef HAVE_HOTSWAP |
diff --git a/firmware/usbstack/usb_storage.c b/firmware/usbstack/usb_storage.c index 5e97796db0..475bd4c00a 100644 --- a/firmware/usbstack/usb_storage.c +++ b/firmware/usbstack/usb_storage.c | |||
@@ -418,6 +418,11 @@ void usb_storage_init_connection(void) | |||
418 | usb_drv_recv(ep_out, tb.transfer_buffer, 1024); | 418 | usb_drv_recv(ep_out, tb.transfer_buffer, 1024); |
419 | } | 419 | } |
420 | 420 | ||
421 | void usb_storage_disconnect(void) | ||
422 | { | ||
423 | /* Empty for now */ | ||
424 | } | ||
425 | |||
421 | /* called by usb_core_transfer_complete() */ | 426 | /* called by usb_core_transfer_complete() */ |
422 | void usb_storage_transfer_complete(int ep,int dir,int status,int length) | 427 | void usb_storage_transfer_complete(int ep,int dir,int status,int length) |
423 | { | 428 | { |
diff --git a/firmware/usbstack/usb_storage.h b/firmware/usbstack/usb_storage.h index 4c89039bfd..8344419770 100644 --- a/firmware/usbstack/usb_storage.h +++ b/firmware/usbstack/usb_storage.h | |||
@@ -27,6 +27,7 @@ int usb_storage_request_endpoints(struct usb_class_driver *); | |||
27 | int usb_storage_set_first_interface(int interface); | 27 | int usb_storage_set_first_interface(int interface); |
28 | int usb_storage_get_config_descriptor(unsigned char *dest,int max_packet_size); | 28 | int usb_storage_get_config_descriptor(unsigned char *dest,int max_packet_size); |
29 | void usb_storage_init_connection(void); | 29 | void usb_storage_init_connection(void); |
30 | void usb_storage_disconnect(void); | ||
30 | void usb_storage_init(void); | 31 | void usb_storage_init(void); |
31 | void usb_storage_transfer_complete(int ep,int dir,int state,int length); | 32 | void usb_storage_transfer_complete(int ep,int dir,int state,int length); |
32 | bool usb_storage_control_request(struct usb_ctrlrequest* req); | 33 | bool usb_storage_control_request(struct usb_ctrlrequest* req); |