summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsakimisu <[email protected]>2023-06-21 21:26:25 +0800
committersakimisu <[email protected]>2023-06-21 21:26:25 +0800
commit340fa4e024e3f2ef38fe32102753388e87e8073b (patch)
treeb6672f915eb8eb0cdee58d3cc9da5ebc12b7071c
parent822cd9d679e397a7f220bd7d57ca4b52b8ccd640 (diff)
use usbd_event_handler instead of usbd_configure_done_callback
-rw-r--r--core/usbd_core.c1
-rw-r--r--core/usbd_core.h1
-rw-r--r--demo/audio_v1_mic_multichan_template.c31
-rw-r--r--demo/audio_v1_mic_speaker_multichan_template.c33
-rw-r--r--demo/audio_v2_mic_multichan_template.c31
-rw-r--r--demo/audio_v2_mic_speaker_multichan_template.c30
-rw-r--r--demo/audio_v2_speaker_multichan_template.c30
-rw-r--r--demo/cdc_acm_hid_msc_template.c27
-rw-r--r--demo/cdc_acm_msc_template.c27
-rw-r--r--demo/cdc_acm_multi_template.c33
-rw-r--r--demo/cdc_acm_template.c27
-rw-r--r--demo/cdc_rndis_template.c37
-rw-r--r--demo/cmsis-dap_v2.1_tempate.c29
-rw-r--r--demo/dfu_with_st_tool_template.c24
-rw-r--r--demo/hid_custom_inout_template.c27
-rw-r--r--demo/hid_keyboard_template.c24
-rw-r--r--demo/hid_mouse_template.c24
-rw-r--r--demo/midi_template.c25
-rw-r--r--demo/msc_ram_template.c24
-rw-r--r--demo/mtp_template.c23
-rw-r--r--demo/printer_template.c27
-rw-r--r--demo/video_static_mjpeg_template.c24
-rw-r--r--demo/winusb1.0_template.c27
23 files changed, 512 insertions, 74 deletions
diff --git a/core/usbd_core.c b/core/usbd_core.c
index 64a4ead5..5bb09d92 100644
--- a/core/usbd_core.c
+++ b/core/usbd_core.c
@@ -1301,7 +1301,6 @@ __WEAK void usbd_event_handler(uint8_t event)
case USBD_EVENT_SUSPEND:
break;
case USBD_EVENT_CONFIGURED:
- usbd_configure_done_callback();
break;
case USBD_EVENT_SET_REMOTE_WAKEUP:
break;
diff --git a/core/usbd_core.h b/core/usbd_core.h
index 561730e4..f54ee992 100644
--- a/core/usbd_core.h
+++ b/core/usbd_core.h
@@ -88,7 +88,6 @@ void usbd_add_interface(struct usbd_interface *intf);
void usbd_add_endpoint(struct usbd_endpoint *ep);
bool usb_device_is_configured(void);
-void usbd_configure_done_callback(void);
int usbd_initialize(void);
int usbd_deinitialize(void);
diff --git a/demo/audio_v1_mic_multichan_template.c b/demo/audio_v1_mic_multichan_template.c
index 7ab10ca6..b612121d 100644
--- a/demo/audio_v1_mic_multichan_template.c
+++ b/demo/audio_v1_mic_multichan_template.c
@@ -145,19 +145,40 @@ const uint8_t audio_v1_descriptor[] = {
0x00
};
-void usbd_configure_done_callback(void)
-{
- /* no out ep, do nothing */
-}
-
volatile bool tx_flag = 0;
volatile bool ep_tx_busy_flag = false;
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
+
void usbd_audio_open(uint8_t intf)
{
tx_flag = 1;
USB_LOG_RAW("OPEN\r\n");
}
+
void usbd_audio_close(uint8_t intf)
{
USB_LOG_RAW("CLOSE\r\n");
diff --git a/demo/audio_v1_mic_speaker_multichan_template.c b/demo/audio_v1_mic_speaker_multichan_template.c
index eb28fba7..9b802028 100644
--- a/demo/audio_v1_mic_speaker_multichan_template.c
+++ b/demo/audio_v1_mic_speaker_multichan_template.c
@@ -145,6 +145,32 @@ USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t write_buffer[AUDIO_IN_PACKET];
volatile bool tx_flag = 0;
volatile bool rx_flag = 0;
+volatile bool ep_tx_busy_flag = false;
+
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
void usbd_audio_open(uint8_t intf)
{
@@ -158,6 +184,7 @@ void usbd_audio_open(uint8_t intf)
printf("OPEN2\r\n");
}
}
+
void usbd_audio_close(uint8_t intf)
{
if (intf == 1) {
@@ -169,12 +196,6 @@ void usbd_audio_close(uint8_t intf)
}
}
-volatile bool ep_tx_busy_flag = false;
-
-void usbd_configure_done_callback(void)
-{
-}
-
void usbd_audio_out_callback(uint8_t ep, uint32_t nbytes)
{
USB_LOG_RAW("actual out len:%d\r\n", nbytes);
diff --git a/demo/audio_v2_mic_multichan_template.c b/demo/audio_v2_mic_multichan_template.c
index d6533a21..8c83c9eb 100644
--- a/demo/audio_v2_mic_multichan_template.c
+++ b/demo/audio_v2_mic_multichan_template.c
@@ -159,11 +159,37 @@ static const uint8_t mic_default_sampling_freq_table[] = {
volatile bool tx_flag = 0;
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
+
void usbd_audio_open(uint8_t intf)
{
tx_flag = 1;
USB_LOG_RAW("OPEN\r\n");
}
+
void usbd_audio_close(uint8_t intf)
{
USB_LOG_RAW("CLOSE\r\n");
@@ -177,11 +203,6 @@ void usbd_audio_get_sampling_freq_table(uint8_t ep, uint8_t **sampling_freq_tabl
}
}
-void usbd_configure_done_callback(void)
-{
- /* no out ep, do nothing */
-}
-
void usbd_audio_iso_in_callback(uint8_t ep, uint32_t nbytes)
{
}
diff --git a/demo/audio_v2_mic_speaker_multichan_template.c b/demo/audio_v2_mic_speaker_multichan_template.c
index 2701d1e8..3d0eead7 100644
--- a/demo/audio_v2_mic_speaker_multichan_template.c
+++ b/demo/audio_v2_mic_speaker_multichan_template.c
@@ -229,6 +229,31 @@ USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t write_buffer[AUDIO_IN_PACKET];
volatile bool tx_flag = 0;
volatile bool rx_flag = 0;
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
+
void usbd_audio_open(uint8_t intf)
{
if (intf == 1) {
@@ -241,6 +266,7 @@ void usbd_audio_open(uint8_t intf)
USB_LOG_RAW("OPEN2\r\n");
}
}
+
void usbd_audio_close(uint8_t intf)
{
if (intf == 1) {
@@ -276,10 +302,6 @@ void usbd_audio_set_sampling_freq(uint8_t ep, uint32_t sampling_freq)
}
}
-void usbd_configure_done_callback(void)
-{
-}
-
void usbd_audio_iso_out_callback(uint8_t ep, uint32_t nbytes)
{
USB_LOG_RAW("actual out len:%d\r\n", nbytes);
diff --git a/demo/audio_v2_speaker_multichan_template.c b/demo/audio_v2_speaker_multichan_template.c
index 54ae38ff..84301502 100644
--- a/demo/audio_v2_speaker_multichan_template.c
+++ b/demo/audio_v2_speaker_multichan_template.c
@@ -173,6 +173,31 @@ USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t read_buffer[AUDIO_OUT_PACKET];
volatile bool rx_flag = 0;
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
+
void usbd_audio_open(uint8_t intf)
{
rx_flag = 1;
@@ -180,6 +205,7 @@ void usbd_audio_open(uint8_t intf)
usbd_ep_start_read(AUDIO_OUT_EP, read_buffer, AUDIO_OUT_PACKET);
USB_LOG_RAW("OPEN\r\n");
}
+
void usbd_audio_close(uint8_t intf)
{
USB_LOG_RAW("CLOSE\r\n");
@@ -193,10 +219,6 @@ void usbd_audio_get_sampling_freq_table(uint8_t ep, uint8_t **sampling_freq_tabl
}
}
-void usbd_configure_done_callback(void)
-{
-}
-
void usbd_audio_iso_out_callback(uint8_t ep, uint32_t nbytes)
{
USB_LOG_RAW("actual out len:%d\r\n", nbytes);
diff --git a/demo/cdc_acm_hid_msc_template.c b/demo/cdc_acm_hid_msc_template.c
index 02243991..8b0f2ebb 100644
--- a/demo/cdc_acm_hid_msc_template.c
+++ b/demo/cdc_acm_hid_msc_template.c
@@ -238,10 +238,31 @@ volatile bool ep_tx_busy_flag = false;
#define CDC_MAX_MPS 64
#endif
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_cdc_acm_bulk_out(uint8_t ep, uint32_t nbytes)
diff --git a/demo/cdc_acm_msc_template.c b/demo/cdc_acm_msc_template.c
index e66e5dff..67fe85cf 100644
--- a/demo/cdc_acm_msc_template.c
+++ b/demo/cdc_acm_msc_template.c
@@ -121,10 +121,31 @@ volatile bool ep_tx_busy_flag = false;
#define CDC_MAX_MPS 64
#endif
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_cdc_acm_bulk_out(uint8_t ep, uint32_t nbytes)
diff --git a/demo/cdc_acm_multi_template.c b/demo/cdc_acm_multi_template.c
index 5ab43353..3b9f083f 100644
--- a/demo/cdc_acm_multi_template.c
+++ b/demo/cdc_acm_multi_template.c
@@ -125,13 +125,34 @@ volatile bool ep_tx_busy_flag = false;
#define CDC_MAX_MPS 64
#endif
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
- usbd_ep_start_read(CDC_OUT_EP2, read_buffer, 2048);
- usbd_ep_start_read(CDC_OUT_EP3, read_buffer, 2048);
- usbd_ep_start_read(CDC_OUT_EP4, read_buffer, 2048);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ usbd_ep_start_read(CDC_OUT_EP2, read_buffer, 2048);
+ usbd_ep_start_read(CDC_OUT_EP3, read_buffer, 2048);
+ usbd_ep_start_read(CDC_OUT_EP4, read_buffer, 2048);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_cdc_acm_bulk_out(uint8_t ep, uint32_t nbytes)
diff --git a/demo/cdc_acm_template.c b/demo/cdc_acm_template.c
index 3cd1fea0..494330d0 100644
--- a/demo/cdc_acm_template.c
+++ b/demo/cdc_acm_template.c
@@ -110,10 +110,31 @@ volatile bool ep_tx_busy_flag = false;
#define CDC_MAX_MPS 64
#endif
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(CDC_OUT_EP, read_buffer, 2048);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_cdc_acm_bulk_out(uint8_t ep, uint32_t nbytes)
diff --git a/demo/cdc_rndis_template.c b/demo/cdc_rndis_template.c
index 49ec1106..3e10545d 100644
--- a/demo/cdc_rndis_template.c
+++ b/demo/cdc_rndis_template.c
@@ -110,11 +110,6 @@ const uint8_t mac[6] = { 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff };
struct eth_device rndis_dev;
-void usbd_configure_done_callback(void)
-{
- eth_device_linkchange(&rndis_dev, RT_TRUE);
-}
-
static rt_err_t rt_usbd_rndis_control(rt_device_t dev, int cmd, void *args)
{
switch (cmd) {
@@ -161,10 +156,6 @@ void rt_usbd_rndis_init(void)
eth_device_linkchange(&rndis_dev, RT_FALSE);
}
#else
-void usbd_configure_done_callback(void)
-{
-}
-
#include "lwip/err.h"
#include "lwip/netif.h"
#include "netif/ethernet.h"
@@ -260,6 +251,34 @@ void rndis_input_poll(void)
}
#endif /* RT_USING_LWIP */
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+#ifdef RT_USING_LWIP
+ eth_device_linkchange(&rndis_dev, RT_TRUE);
+#endif
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
+
struct usbd_interface intf0;
struct usbd_interface intf1;
diff --git a/demo/cmsis-dap_v2.1_tempate.c b/demo/cmsis-dap_v2.1_tempate.c
index c82a005e..4ef78ea2 100644
--- a/demo/cmsis-dap_v2.1_tempate.c
+++ b/demo/cmsis-dap_v2.1_tempate.c
@@ -192,11 +192,32 @@ USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t USB_Response[DAP_PACKET_SIZE];
volatile bool ep_tx_busy_flag = false;
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(CDC_OUT_EP, cdc_read_buffer, CDC_MAX_MPS);
- usbd_ep_start_read(DAP_OUT_EP, USB_Request, DAP_PACKET_SIZE);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(CDC_OUT_EP, cdc_read_buffer, CDC_MAX_MPS);
+ usbd_ep_start_read(DAP_OUT_EP, USB_Request, DAP_PACKET_SIZE);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_cdc_acm_bulk_out(uint8_t ep, uint32_t nbytes)
diff --git a/demo/dfu_with_st_tool_template.c b/demo/dfu_with_st_tool_template.c
index 7d168242..fbf70b4c 100644
--- a/demo/dfu_with_st_tool_template.c
+++ b/demo/dfu_with_st_tool_template.c
@@ -137,9 +137,29 @@ const uint8_t dfu_flash_descriptor[] = {
0x00
};
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* no out ep, do nothing */
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
struct usbd_interface intf0;
diff --git a/demo/hid_custom_inout_template.c b/demo/hid_custom_inout_template.c
index 76e7acde..cd6f9713 100644
--- a/demo/hid_custom_inout_template.c
+++ b/demo/hid_custom_inout_template.c
@@ -167,10 +167,31 @@ USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t write_buffer[64];
/*!< hid state ! Data can be sent only when state is idle */
static volatile uint8_t custom_state = HID_STATE_IDLE;
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(HIDRAW_OUT_EP, read_buffer, 64);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(HIDRAW_OUT_EP, read_buffer, 64);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
static void usbd_hid_custom_in_callback(uint8_t ep, uint32_t nbytes)
diff --git a/demo/hid_keyboard_template.c b/demo/hid_keyboard_template.c
index 14959408..cb9d593c 100644
--- a/demo/hid_keyboard_template.c
+++ b/demo/hid_keyboard_template.c
@@ -172,9 +172,29 @@ static const uint8_t hid_keyboard_report_desc[HID_KEYBOARD_REPORT_DESC_SIZE] = {
0xc0 // END_COLLECTION
};
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* no out ep, do nothing */
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
#define HID_STATE_IDLE 0
diff --git a/demo/hid_mouse_template.c b/demo/hid_mouse_template.c
index 96ad51c5..81aff89d 100644
--- a/demo/hid_mouse_template.c
+++ b/demo/hid_mouse_template.c
@@ -194,9 +194,29 @@ static USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX struct hid_mouse mouse_cfg;
/*!< hid state ! Data can be sent only when state is idle */
static volatile uint8_t hid_state = HID_STATE_IDLE;
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* no out ep, do nothing */
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
/* function ------------------------------------------------------------------*/
diff --git a/demo/midi_template.c b/demo/midi_template.c
index a9596a11..f8fb82f7 100644
--- a/demo/midi_template.c
+++ b/demo/midi_template.c
@@ -146,6 +146,31 @@ const uint8_t midi_descriptor[] = {
0x00
};
+void usbd_event_handler(uint8_t event)
+{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
+}
+
void usbd_midi_bulk_out(uint8_t ep, uint32_t nbytes)
{
}
diff --git a/demo/msc_ram_template.c b/demo/msc_ram_template.c
index d755a817..84cd7bea 100644
--- a/demo/msc_ram_template.c
+++ b/demo/msc_ram_template.c
@@ -95,9 +95,29 @@ const uint8_t msc_ram_descriptor[] = {
0x00
};
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* do nothing */
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
#define BLOCK_SIZE 512
diff --git a/demo/mtp_template.c b/demo/mtp_template.c
index 33e4f506..873532db 100644
--- a/demo/mtp_template.c
+++ b/demo/mtp_template.c
@@ -151,8 +151,29 @@ const uint8_t bos_descriptor[] = {
0x0a, 0x10, 0x03, 0x00, 0x0f, 0x00, 0x01, 0x01, 0xf4, 0x01
};
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
struct usbd_interface intf0;
diff --git a/demo/printer_template.c b/demo/printer_template.c
index 0b666c4d..9d50360c 100644
--- a/demo/printer_template.c
+++ b/demo/printer_template.c
@@ -101,10 +101,31 @@ static const uint8_t printer_descriptor[] = {
USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t read_buffer[PRINTER_OUT_EP_SIZE];
USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t write_buffer[PRINTER_IN_EP_SIZE];
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(PRINTER_OUT_EP, read_buffer, PRINTER_OUT_EP_SIZE);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(PRINTER_OUT_EP, read_buffer, PRINTER_OUT_EP_SIZE);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_printer_bulk_out(uint8_t ep, uint32_t nbytes)
diff --git a/demo/video_static_mjpeg_template.c b/demo/video_static_mjpeg_template.c
index a9c4b020..4079f123 100644
--- a/demo/video_static_mjpeg_template.c
+++ b/demo/video_static_mjpeg_template.c
@@ -141,9 +141,29 @@ const uint8_t video_descriptor[] = {
0x00
};
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* no out ep, so do nothing */
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
volatile bool tx_flag = 0;
diff --git a/demo/winusb1.0_template.c b/demo/winusb1.0_template.c
index 564b79b9..1a8dc11b 100644
--- a/demo/winusb1.0_template.c
+++ b/demo/winusb1.0_template.c
@@ -187,10 +187,31 @@ USB_NOCACHE_RAM_SECTION USB_MEM_ALIGNX uint8_t write_buffer[2048];
volatile bool ep_tx_busy_flag = false;
-void usbd_configure_done_callback(void)
+void usbd_event_handler(uint8_t event)
{
- /* setup first out ep read transfer */
- usbd_ep_start_read(WINUSB_OUT_EP, read_buffer, 2048);
+ switch (event) {
+ case USBD_EVENT_RESET:
+ break;
+ case USBD_EVENT_CONNECTED:
+ break;
+ case USBD_EVENT_DISCONNECTED:
+ break;
+ case USBD_EVENT_RESUME:
+ break;
+ case USBD_EVENT_SUSPEND:
+ break;
+ case USBD_EVENT_CONFIGURED:
+ /* setup first out ep read transfer */
+ usbd_ep_start_read(WINUSB_OUT_EP, read_buffer, 2048);
+ break;
+ case USBD_EVENT_SET_REMOTE_WAKEUP:
+ break;
+ case USBD_EVENT_CLR_REMOTE_WAKEUP:
+ break;
+
+ default:
+ break;
+ }
}
void usbd_winusb_out(uint8_t ep, uint32_t nbytes)