summaryrefslogtreecommitdiff
path: root/firmware/export/usb_core.h
diff options
context:
space:
mode:
authorFrank Gevaerts <frank@gevaerts.be>2008-10-03 22:43:16 +0000
committerFrank Gevaerts <frank@gevaerts.be>2008-10-03 22:43:16 +0000
commit478fc5baed82e5573938041aed0f1a4f73f32128 (patch)
treeb7115cb1200101075bf93d93f61bd0be65ff9d42 /firmware/export/usb_core.h
parent6219f4c862919367972e497c47324121fe48f3f6 (diff)
reorganise the USB stack a bit to allow for easier integration of non-ARC controller drivers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18703 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/usb_core.h')
-rw-r--r--firmware/export/usb_core.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/firmware/export/usb_core.h b/firmware/export/usb_core.h
index 6aada54399..9d9e327bb3 100644
--- a/firmware/export/usb_core.h
+++ b/firmware/export/usb_core.h
@@ -45,10 +45,12 @@
extern int usb_max_pkt_size;
+struct usb_class_driver;
+
void usb_core_init(void);
void usb_core_exit(void);
void usb_core_control_request(struct usb_ctrlrequest* req);
-void usb_core_transfer_complete(int endpoint, bool in, int status, int length);
+void usb_core_transfer_complete(int endpoint, int dir, int status, int length);
void usb_core_bus_reset(void);
bool usb_core_exclusive_connection(void);
void usb_core_enable_driver(int driver,bool enabled);
@@ -56,6 +58,10 @@ bool usb_core_driver_enabled (int driver);
void usb_core_handle_transfer_completion(
struct usb_transfer_completion_event_data* event);
int usb_core_ack_control(struct usb_ctrlrequest* req);
+
+int usb_core_request_endpoint(int dir, struct usb_class_driver *drv);
+void usb_core_release_endpoint(int dir);
+
#ifdef HAVE_HOTSWAP
void usb_core_hotswap_event(int volume,bool inserted);
#endif