summaryrefslogtreecommitdiff
path: root/firmware/export
diff options
context:
space:
mode:
authorFrank Gevaerts <frank@gevaerts.be>2008-03-10 20:55:24 +0000
committerFrank Gevaerts <frank@gevaerts.be>2008-03-10 20:55:24 +0000
commit745133014e6161c4d8c7a7eab137b7d9b1174c55 (patch)
tree0731cf8a30b17dae164e4240e48b28782cdf5a06 /firmware/export
parent9d32b6aa1776db210d5c01589704a65238240df2 (diff)
downloadrockbox-745133014e6161c4d8c7a7eab137b7d9b1174c55.zip
rockbox-745133014e6161c4d8c7a7eab137b7d9b1174c55.tar.gz
rockbox-745133014e6161c4d8c7a7eab137b7d9b1174c55.tar.bz2
rockbox-745133014e6161c4d8c7a7eab137b7d9b1174c55.tar.xz
make the usb storage driver handle hotswap correctly, and exit the usb screen once all drives are "ejected" (either as a command from the OS or physically)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16617 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/usb.h2
-rw-r--r--firmware/export/usb_core.h5
2 files changed, 6 insertions, 1 deletions
diff --git a/firmware/export/usb.h b/firmware/export/usb.h
index 4dae7c2..a80dd82 100644
--- a/firmware/export/usb.h
+++ b/firmware/export/usb.h
@@ -30,6 +30,7 @@ enum {
USB_POWERED,
USB_TRANSFER_COMPLETION,
USB_REQUEST_DISK,
+ USB_RELEASE_DISK,
USB_REQUEST_REBOOT
};
@@ -105,6 +106,7 @@ void usb_signal_transfer_completion(struct usb_transfer_completion_event_data* e
bool usb_driver_enabled(int driver);
bool usb_exclusive_ata(void); /* ata is available for usb */
void usb_request_exclusive_ata(void);
+void usb_release_exclusive_ata(void);
#endif
#if defined(IPOD_COLOR) || defined(IPOD_4G) \
diff --git a/firmware/export/usb_core.h b/firmware/export/usb_core.h
index a1701bc..fd55ac8 100644
--- a/firmware/export/usb_core.h
+++ b/firmware/export/usb_core.h
@@ -21,7 +21,7 @@
#ifndef BOOTLOADER
-//#define USB_SERIAL
+#define USB_SERIAL
#define USB_STORAGE
#define USB_CHARGING_ONLY
#else /* BOOTLOADER */
@@ -47,5 +47,8 @@ void usb_core_enable_driver(int driver,bool enabled);
bool usb_core_driver_enabled (int driver);
void usb_core_handle_transfer_completion(
struct usb_transfer_completion_event_data* event);
+#ifdef HAVE_HOTSWAP
+void usb_core_hotswap_event(int volume,bool inserted);
+#endif
#endif