diff options
Diffstat (limited to 'firmware/export')
-rw-r--r-- | firmware/export/usb_core.h | 4 | ||||
-rw-r--r-- | firmware/export/usb_drv.h | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/firmware/export/usb_core.h b/firmware/export/usb_core.h index 78a80435e1..fe1f7459cf 100644 --- a/firmware/export/usb_core.h +++ b/firmware/export/usb_core.h | |||
@@ -51,7 +51,9 @@ struct usb_class_driver; | |||
51 | 51 | ||
52 | void usb_core_init(void); | 52 | void usb_core_init(void); |
53 | void usb_core_exit(void); | 53 | void usb_core_exit(void); |
54 | void usb_core_control_request(struct usb_ctrlrequest* req); | 54 | void usb_core_control_request(struct usb_ctrlrequest* req, void* data); |
55 | void usb_core_control_complete(int status); | ||
56 | void usb_core_legacy_control_request(struct usb_ctrlrequest* req); | ||
55 | void usb_core_transfer_complete(int endpoint,int dir,int status,int length); | 57 | void usb_core_transfer_complete(int endpoint,int dir,int status,int length); |
56 | void usb_core_bus_reset(void); | 58 | void usb_core_bus_reset(void); |
57 | bool usb_core_any_exclusive_storage(void); | 59 | bool usb_core_any_exclusive_storage(void); |
diff --git a/firmware/export/usb_drv.h b/firmware/export/usb_drv.h index 01535c2786..3ef4db3c9c 100644 --- a/firmware/export/usb_drv.h +++ b/firmware/export/usb_drv.h | |||
@@ -56,6 +56,12 @@ | |||
56 | * -> usb_drv_int_enable(false) [ditto] | 56 | * -> usb_drv_int_enable(false) [ditto] |
57 | * -> soc specific controller/clock deinit */ | 57 | * -> soc specific controller/clock deinit */ |
58 | 58 | ||
59 | enum usb_control_response { | ||
60 | USB_CONTROL_ACK, | ||
61 | USB_CONTROL_STALL, | ||
62 | USB_CONTROL_RECEIVE, | ||
63 | }; | ||
64 | |||
59 | /* one-time initialisation of the USB driver */ | 65 | /* one-time initialisation of the USB driver */ |
60 | void usb_drv_startup(void); | 66 | void usb_drv_startup(void); |
61 | void usb_drv_int_enable(bool enable); /* Target implemented */ | 67 | void usb_drv_int_enable(bool enable); /* Target implemented */ |
@@ -69,6 +75,8 @@ bool usb_drv_stalled(int endpoint,bool in); | |||
69 | int usb_drv_send(int endpoint, void* ptr, int length); | 75 | int usb_drv_send(int endpoint, void* ptr, int length); |
70 | int usb_drv_send_nonblocking(int endpoint, void* ptr, int length); | 76 | int usb_drv_send_nonblocking(int endpoint, void* ptr, int length); |
71 | int usb_drv_recv_nonblocking(int endpoint, void* ptr, int length); | 77 | int usb_drv_recv_nonblocking(int endpoint, void* ptr, int length); |
78 | void usb_drv_control_response(enum usb_control_response resp, | ||
79 | void* data, int length); | ||
72 | void usb_drv_set_address(int address); | 80 | void usb_drv_set_address(int address); |
73 | void usb_drv_reset_endpoint(int endpoint, bool send); | 81 | void usb_drv_reset_endpoint(int endpoint, bool send); |
74 | bool usb_drv_powered(void); | 82 | bool usb_drv_powered(void); |