add tud_mount_cb, tud_umount_cb

remove device class/interface callback
This commit is contained in:
hathach
2018-03-02 00:18:21 +07:00
parent 0afa0ce4cc
commit 2580b4c6a7
16 changed files with 94 additions and 110 deletions
+8 -8
View File
@@ -64,14 +64,14 @@ FIFO_DEF(fifo_serial, SERIAL_BUFFER_SIZE, uint8_t, true);
//--------------------------------------------------------------------+
// tinyusb callbacks
//--------------------------------------------------------------------+
void tud_cdc_mounted_cb(uint8_t coreid)
void cdc_serial_app_mount(uint8_t coreid)
{
osal_semaphore_reset(sem_hdl);
tud_cdc_receive(coreid, serial_rx_buffer, SERIAL_BUFFER_SIZE, true);
}
void tud_cdc_unmounted_cb(uint8_t coreid)
void cdc_serial_app_umount(uint8_t coreid)
{
}
@@ -111,26 +111,26 @@ void tud_cdc_xfer_cb(uint8_t coreid, tusb_event_t event, cdc_pipeid_t pipe_id, u
//--------------------------------------------------------------------+
// APPLICATION CODE
//--------------------------------------------------------------------+
void cdcd_serial_app_init(void)
void cdc_serial_app_init(void)
{
sem_hdl = osal_semaphore_create(1, 0);
ASSERT_PTR( sem_hdl, VOID_RETURN);
osal_task_create(cdcd_serial_app_task, "cdc", 128, NULL, CDC_SERIAL_APP_TASK_PRIO);
osal_task_create(cdc_serial_app_task, "cdc", 128, NULL, CDC_SERIAL_APP_TASK_PRIO);
}
tusb_error_t cdcd_serial_subtask(void);
tusb_error_t cdc_serial_subtask(void);
void cdcd_serial_app_task(void* param)
void cdc_serial_app_task(void* param)
{
(void) param;
OSAL_TASK_BEGIN
cdcd_serial_subtask();
cdc_serial_subtask();
OSAL_TASK_END
}
tusb_error_t cdcd_serial_subtask(void)
tusb_error_t cdc_serial_subtask(void)
{
OSAL_SUBTASK_BEGIN
+9 -4
View File
@@ -55,13 +55,18 @@
#if TUSB_CFG_DEVICE_CDC
void cdcd_serial_app_init(void);
void cdcd_serial_app_task(void* param);
void cdc_serial_app_init(void);
void cdc_serial_app_task(void* param);
void cdc_serial_app_mount(uint8_t coreid);
void cdc_serial_app_umount(uint8_t coreid);
#else
#define cdcd_serial_app_init()
#define cdcd_serial_app_task(x)
#define cdc_serial_app_init()
#define cdc_serial_app_task(x)
#define cdc_serial_app_mount(x)
#define cdc_serial_app_umount(x)
#endif
+5 -5
View File
@@ -56,12 +56,12 @@ TUSB_CFG_ATTR_USBRAM hid_keyboard_report_t keyboard_report;
//--------------------------------------------------------------------+
// tinyusb callbacks
//--------------------------------------------------------------------+
void tud_hid_keyboard_mounted_cb(uint8_t coreid)
void keyboard_app_mount(uint8_t coreid)
{
}
void tud_hid_keyboard_unmounted_cb(uint8_t coreid)
void keyboard_app_umount(uint8_t coreid)
{
}
@@ -104,14 +104,14 @@ void tud_hid_keyboard_set_report_cb(uint8_t coreid, hid_request_report_type_t re
//--------------------------------------------------------------------+
// APPLICATION CODE
//--------------------------------------------------------------------+
void keyboard_device_app_init(void)
void keyboard_app_init(void)
{
osal_task_create(keyboard_device_app_task, "kbd", 128, NULL, KEYBOARD_APP_TASK_PRIO);
osal_task_create(keyboard_app_task, "kbd", 128, NULL, KEYBOARD_APP_TASK_PRIO);
}
tusb_error_t keyboard_device_subtask(void);
void keyboard_device_app_task(void* param)
void keyboard_app_task(void* param)
{
(void) param;
+9 -4
View File
@@ -55,13 +55,18 @@
#if TUSB_CFG_DEVICE_HID_KEYBOARD
void keyboard_device_app_init(void);
void keyboard_device_app_task(void* param);
void keyboard_app_init(void);
void keyboard_app_task(void* param);
void keyboard_app_mount(uint8_t coreid);
void keyboard_app_umount(uint8_t coreid);
#else
#define keyboard_device_app_init()
#define keyboard_device_app_task(x)
#define keyboard_app_init()
#define keyboard_app_task(x)
#define keyboard_app_mount(x)
#define keyboard_app_umount(x)
#endif
+25 -8
View File
@@ -69,10 +69,10 @@ void os_none_start_scheduler(void)
tusb_task_runner();
led_blinking_task(NULL);
msc_device_app_task(NULL);
keyboard_device_app_task(NULL);
mouse_device_app_task(NULL);
cdcd_serial_app_task(NULL);
msc_app_task(NULL);
keyboard_app_task(NULL);
mouse_app_task(NULL);
cdc_serial_app_task(NULL);
}
}
#endif
@@ -87,10 +87,10 @@ int main(void)
//------------- application task init -------------//
led_blinking_init();
msc_device_app_init();
keyboard_device_app_init();
mouse_device_app_init();
cdcd_serial_app_init();
msc_app_init();
keyboard_app_init();
mouse_app_init();
cdc_serial_app_init();
//------------- start OS scheduler (never return) -------------//
#if TUSB_CFG_OS == TUSB_OS_FREERTOS
@@ -104,6 +104,23 @@ int main(void)
return 0;
}
//--------------------------------------------------------------------+
// tinyusb callbacks
//--------------------------------------------------------------------+
void tud_mount_cb(uint8_t coreid)
{
cdc_serial_app_mount(coreid);
keyboard_app_mount(coreid);
msc_app_mount(coreid);
}
void tud_umount_cb(uint8_t coreid)
{
cdc_serial_app_umount(coreid);
keyboard_app_umount(coreid);
msc_app_umount(coreid);
}
//--------------------------------------------------------------------+
// HELPER FUNCTION
//--------------------------------------------------------------------+
+8 -8
View File
@@ -56,12 +56,12 @@ TUSB_CFG_ATTR_USBRAM hid_mouse_report_t mouse_report;
//--------------------------------------------------------------------+
// tinyusb callbacks
//--------------------------------------------------------------------+
void tusbd_hid_mouse_mounted_cb(uint8_t coreid)
void mouse_app_mount(uint8_t coreid)
{
}
void tusbd_hid_mouse_unmounted_cb(uint8_t coreid)
void mouse_app_umount(uint8_t coreid)
{
}
@@ -93,22 +93,22 @@ void tusbd_hid_mouse_set_report_cb(uint8_t coreid, hid_request_report_type_t rep
//--------------------------------------------------------------------+
// APPLICATION CODE
//--------------------------------------------------------------------+
void mouse_device_app_init(void)
void mouse_app_init(void)
{
osal_task_create(mouse_device_app_task, "mouse", 128, NULL, MOUSE_APP_TASK_PRIO);
osal_task_create(mouse_app_task, "mouse", 128, NULL, MOUSE_APP_TASK_PRIO);
}
void mouse_device_subtask(void);
void mouse_app_subtask(void);
void mouse_device_app_task(void * param)
void mouse_app_task(void * param)
{
(void) para;
OSAL_TASK_BEGIN
mouse_device_subtask();
mouse_app_subtask();
OSAL_TASK_END
}
void mouse_device_subtask(void)
void mouse_app_subtask(void)
{
OSAL_SUBTASK_BEGIN
+8 -4
View File
@@ -55,13 +55,17 @@
#if TUSB_CFG_DEVICE_HID_MOUSE
void mouse_device_app_init(void);
void mouse_device_app_task(void * param);
void mouse_app_init(void);
void mouse_app_task(void * param);
void mouse_app_mount(uint8_t coreid);
void mouse_app_umount(uint8_t coreid);
#else
#define mouse_device_app_init()
#define mouse_device_app_task(x)
#define mouse_app_init()
#define mouse_app_task(x)
#define mouse_app_mount(x)
#define mouse_app_umount(x)
#endif
+4 -4
View File
@@ -89,12 +89,12 @@ static scsi_mode_parameters_t const msc_dev_mode_para =
//--------------------------------------------------------------------+
// tinyusb callbacks
//--------------------------------------------------------------------+
void tud_msc_mounted_cb(uint8_t coreid)
void msc_app_mount(uint8_t coreid)
{
}
void tud_msc_unmounted_cb(uint8_t coreid)
void msc_app_umount(uint8_t coreid)
{
}
@@ -156,7 +156,7 @@ msc_csw_status_t tud_msc_scsi_cb (uint8_t coreid, uint8_t lun, uint8_t scsi_cmd[
//--------------------------------------------------------------------+
// APPLICATION CODE
//--------------------------------------------------------------------+
void msc_device_app_task(void* param)
void msc_app_task(void* param)
{ // no need to implement the task yet
(void) param;
@@ -165,7 +165,7 @@ void msc_device_app_task(void* param)
OSAL_TASK_END
}
void msc_device_app_init (void)
void msc_app_init (void)
{
}
+9 -4
View File
@@ -69,15 +69,20 @@ issue at github.com/hathach/tinyusb"
#define MSCD_APP_RAMDISK
#endif
void msc_device_app_init(void);
void msc_device_app_task(void* param);
void msc_app_init(void);
void msc_app_task(void* param);
void msc_app_mount(uint8_t coreid);
void msc_app_umount(uint8_t coreid);
extern scsi_sense_fixed_data_t mscd_sense_data;
#else
#define msc_device_app_init()
#define msc_device_app_task(x)
#define msc_app_init()
#define msc_app_task(x)
#define msc_app_mount(x)
#define msc_app_umount(x)
#endif