rename CFG_TUSB_OS_TASK_PRIO to CFG_TUD_TASK_PRIO, TUC_DEVICE_STACKSIZE to CFG_TUD_TASK_STACKSIZE

This commit is contained in:
hathach 2018-04-13 16:10:42 +07:00
parent a24615bffc
commit e7d7cb222a
13 changed files with 37 additions and 57 deletions

View File

@ -20,7 +20,7 @@
#define CFG_TUSB_MCU ///< Select one of the supported MCU, the value must be from \ref group_mcu #define CFG_TUSB_MCU ///< Select one of the supported MCU, the value must be from \ref group_mcu
#define CFG_TUSB_OS ///< Select one of the supported RTOS, the value must be from \ref group_supported_os. #define CFG_TUSB_OS ///< Select one of the supported RTOS, the value must be from \ref group_supported_os.
#define CFG_TUSB_OS_TASK_PRIO ///< If \ref CFG_TUSB_OS is configured to use a real RTOS (other than OPT_OS_NONE). This determines the priority of the usb stack task. #define CFG_TUD_TASK_PRIO ///< If \ref CFG_TUSB_OS is configured to use a real RTOS (other than OPT_OS_NONE). This determines the priority of the usb stack task.
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// HOST CONFIGURATION // HOST CONFIGURATION

View File

@ -35,7 +35,7 @@ It is relatively simple to incorporate tinyusb to your (existing) project
1. Copy core folder **tinyusb** to your project. Let's say it is *your_project/tinyusb* 1. Copy core folder **tinyusb** to your project. Let's say it is *your_project/tinyusb*
2. Add all the .c in the core folder to your project settings (uvproj, ewp, makefile) 2. Add all the .c in the core folder to your project settings (uvproj, ewp, makefile)
3. Add *your_project/tinysb* to your include path. Also make sure your current include path also contains the configuration file tusb_config.h. Or you could simply put the tusb_config.h into the tinyusb folder as well. 3. Add *your_project/tinysb* to your include path. Also make sure your current include path also contains the configuration file tusb_config.h. Or you could simply put the tusb_config.h into the tinyusb folder as well.
4. Make sure all required macros are all defined properly in tusb_config.h (configure file in demo application is sufficient, but you need to add a few more such as CFG_TUSB_MCU, CFG_TUSB_OS, CFG_TUSB_OS_TASK_PRIO since they are passed by IDE/compiler to maintain a unique configure for all demo projects). 4. Make sure all required macros are all defined properly in tusb_config.h (configure file in demo application is sufficient, but you need to add a few more such as CFG_TUSB_MCU, CFG_TUSB_OS, CFG_TUD_TASK_PRIO since they are passed by IDE/compiler to maintain a unique configure for all demo projects).
5. If you use the device stack, make sure you have created/modified usb descriptors for your own need. Ultimately you need to fill out required pointers in tusbd_descriptor_pointers for that stack to work. 5. If you use the device stack, make sure you have created/modified usb descriptors for your own need. Ultimately you need to fill out required pointers in tusbd_descriptor_pointers for that stack to work.
6. Add tusb_init() call to your reset initialization code. 6. Add tusb_init() call to your reset initialization code.
7. Implement all enabled classes's callbacks. 7. Implement all enabled classes's callbacks.

View File

@ -69,7 +69,7 @@
#define CFG_TUSB_DEBUG 2 #define CFG_TUSB_DEBUG 2
//#define CFG_TUSB_OS OPT_OS_NONE // be passed from IDE/command line for easy project switching //#define CFG_TUSB_OS OPT_OS_NONE // be passed from IDE/command line for easy project switching
//#define CFG_TUSB_OS_TASK_PRIO 0 // be passed from IDE/command line for easy project switching //#define CFG_TUD_TASK_PRIO 0 // be passed from IDE/command line for easy project switching
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// USB RAM PLACEMENT // USB RAM PLACEMENT

View File

@ -69,7 +69,7 @@
#define CFG_TUSB_DEBUG 2 #define CFG_TUSB_DEBUG 2
#define CFG_TUSB_OS OPT_OS_NONE // be passed from IDE/command line for easy project switching #define CFG_TUSB_OS OPT_OS_NONE // be passed from IDE/command line for easy project switching
//#define CFG_TUSB_OS_TASK_PRIO 0 // be passed from IDE/command line for easy project switching //#define CFG_TUD_TASK_PRIO 0 // be passed from IDE/command line for easy project switching
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// USB RAM PLACEMENT // USB RAM PLACEMENT

View File

@ -33,7 +33,7 @@
<option id="gnu.c.compiler.option.preprocessor.def.symbols.371325215" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols"> <option id="gnu.c.compiler.option.preprocessor.def.symbols.371325215" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols">
<listOptionValue builtIn="false" value="__REDLIB__"/> <listOptionValue builtIn="false" value="__REDLIB__"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC13UXX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC13UXX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1347"/> <listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1347"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
@ -132,7 +132,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC11UXX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC11UXX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO11U68"/> <listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO11U68"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>
@ -226,7 +226,7 @@
<option id="gnu.c.compiler.option.preprocessor.def.symbols.211439980" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" useByScannerDiscovery="false" valueType="definedSymbols"> <option id="gnu.c.compiler.option.preprocessor.def.symbols.211439980" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="__REDLIB__"/> <listOptionValue builtIn="false" value="__REDLIB__"/>
<listOptionValue builtIn="false" value="__USE_CMSIS"/> <listOptionValue builtIn="false" value="__USE_CMSIS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CORE_M4"/> <listOptionValue builtIn="false" value="CORE_M4"/>
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/>
@ -333,7 +333,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC175X_6X "/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC175X_6X "/>
<listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1769"/> <listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1769"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>
@ -431,7 +431,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_NGX4330"/> <listOptionValue builtIn="false" value="BOARD=BOARD_NGX4330"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>
@ -530,7 +530,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC11UXX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC11UXX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO11U14"/> <listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO11U14"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>

View File

@ -55,7 +55,7 @@
#endif #endif
enum { enum {
STANDARD_APP_TASK_PRIO = LOWER_PRIO(CFG_TUSB_OS_TASK_PRIO), // Application Task is lower than usb system task STANDARD_APP_TASK_PRIO = LOWER_PRIO(CFG_TUD_TASK_PRIO), // Application Task is lower than usb system task
LED_BLINKING_APP_TASK_PRIO = LOWER_PRIO(STANDARD_APP_TASK_PRIO), // Blinking task is lower than normal task LED_BLINKING_APP_TASK_PRIO = LOWER_PRIO(STANDARD_APP_TASK_PRIO), // Blinking task is lower than normal task
KEYBOARD_APP_TASK_PRIO = STANDARD_APP_TASK_PRIO, KEYBOARD_APP_TASK_PRIO = STANDARD_APP_TASK_PRIO,

View File

@ -69,7 +69,7 @@
#define CFG_TUSB_DEBUG 2 #define CFG_TUSB_DEBUG 2
//#define CFG_TUSB_OS OPT_OS_NONE // be passed from IDE/command line for easy project switching //#define CFG_TUSB_OS OPT_OS_NONE // be passed from IDE/command line for easy project switching
//#define CFG_TUSB_OS_TASK_PRIO 0 // be passed from IDE/command line for easy project switching //#define CFG_TUD_TASK_PRIO 0 // be passed from IDE/command line for easy project switching
/*------------------------------------------------------------------*/ /*------------------------------------------------------------------*/

View File

@ -38,7 +38,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_NGX4330"/> <listOptionValue builtIn="false" value="BOARD=BOARD_NGX4330"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=(configMAX_PRIORITIES-5)"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=(configMAX_PRIORITIES-5)"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>
@ -137,7 +137,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_EA4357"/> <listOptionValue builtIn="false" value="BOARD=BOARD_EA4357"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=configMAX_PRIORITIES-5"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=configMAX_PRIORITIES-5"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>
@ -308,7 +308,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC175X_6X"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC175X_6X"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1769"/> <listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1769"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=(configMAX_PRIORITIES-5)"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=(configMAX_PRIORITIES-5)"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>
@ -425,7 +425,7 @@
<listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/> <listOptionValue builtIn="false" value="CFG_TUSB_MCU=OPT_MCU_LPC43XX"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_MCB4300"/> <listOptionValue builtIn="false" value="BOARD=BOARD_MCB4300"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/> <listOptionValue builtIn="false" value="CFG_TUSB_OS=OPT_OS_FREERTOS"/>
<listOptionValue builtIn="false" value="CFG_TUSB_OS_TASK_PRIO=(configMAX_PRIORITIES-5)"/> <listOptionValue builtIn="false" value="CFG_TUD_TASK_PRIO=(configMAX_PRIORITIES-5)"/>
<listOptionValue builtIn="false" value="DEBUG"/> <listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/> <listOptionValue builtIn="false" value="__CODE_RED"/>
<listOptionValue builtIn="false" value="__MULTICORE_NONE"/> <listOptionValue builtIn="false" value="__MULTICORE_NONE"/>

View File

@ -64,7 +64,7 @@
#endif #endif
enum { enum {
STANDARD_APP_TASK_PRIO = LOWER_PRIO(CFG_TUSB_OS_TASK_PRIO), // Application Task is lower than usb system task STANDARD_APP_TASK_PRIO = LOWER_PRIO(CFG_TUD_TASK_PRIO), // Application Task is lower than usb system task
LED_BLINKING_APP_TASK_PRIO = LOWER_PRIO(STANDARD_APP_TASK_PRIO), // Blinking task is lower than normal task LED_BLINKING_APP_TASK_PRIO = LOWER_PRIO(STANDARD_APP_TASK_PRIO), // Blinking task is lower than normal task
KEYBOARD_APP_TASK_PRIO = STANDARD_APP_TASK_PRIO, KEYBOARD_APP_TASK_PRIO = STANDARD_APP_TASK_PRIO,

View File

@ -69,7 +69,7 @@
#define CFG_TUSB_DEBUG 2 #define CFG_TUSB_DEBUG 2
//#define CFG_TUSB_OS OPT_OS_NONE // defined using eclipse build //#define CFG_TUSB_OS OPT_OS_NONE // defined using eclipse build
//#define CFG_TUSB_OS_TASK_PRIO 0 // defined using eclipse build //#define CFG_TUD_TASK_PRIO 0 // defined using eclipse build
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// USB RAM PLACEMENT // USB RAM PLACEMENT

View File

@ -55,7 +55,6 @@ typedef struct {
tusb_error_t (* open)(uint8_t rhport, tusb_desc_interface_t const * desc_intf, uint16_t* p_length); tusb_error_t (* open)(uint8_t rhport, tusb_desc_interface_t const * desc_intf, uint16_t* p_length);
tusb_error_t (* control_request_st) (uint8_t rhport, tusb_control_request_t const *); tusb_error_t (* control_request_st) (uint8_t rhport, tusb_control_request_t const *);
tusb_error_t (* xfer_cb) (uint8_t rhport, uint8_t ep_addr, tusb_event_t, uint32_t); tusb_error_t (* xfer_cb) (uint8_t rhport, uint8_t ep_addr, tusb_event_t, uint32_t);
// void (* routine)(void);
void (* sof)(uint8_t rhport); void (* sof)(uint8_t rhport);
void (* close) (uint8_t); void (* close) (uint8_t);
} usbd_class_driver_t; } usbd_class_driver_t;
@ -87,7 +86,6 @@ static usbd_class_driver_t const usbd_class_drivers[] =
.open = hidd_open, .open = hidd_open,
.control_request_st = hidd_control_request_st, .control_request_st = hidd_control_request_st,
.xfer_cb = hidd_xfer_cb, .xfer_cb = hidd_xfer_cb,
// .routine = NULL,
.sof = NULL, .sof = NULL,
.close = hidd_close .close = hidd_close
}, },
@ -100,7 +98,6 @@ static usbd_class_driver_t const usbd_class_drivers[] =
.open = mscd_open, .open = mscd_open,
.control_request_st = mscd_control_request_st, .control_request_st = mscd_control_request_st,
.xfer_cb = mscd_xfer_cb, .xfer_cb = mscd_xfer_cb,
// .routine = NULL,
.sof = NULL, .sof = NULL,
.close = mscd_close .close = mscd_close
}, },
@ -113,7 +110,6 @@ static usbd_class_driver_t const usbd_class_drivers[] =
.open = cdcd_open, .open = cdcd_open,
.control_request_st = cdcd_control_request_st, .control_request_st = cdcd_control_request_st,
.xfer_cb = cdcd_xfer_cb, .xfer_cb = cdcd_xfer_cb,
// .routine = NULL,
.sof = cdcd_sof, .sof = cdcd_sof,
.close = cdcd_close .close = cdcd_close
}, },
@ -180,12 +176,12 @@ typedef struct ATTR_ALIGNED(4)
VERIFY_STATIC(sizeof(usbd_task_event_t) <= 12, "size is not correct"); VERIFY_STATIC(sizeof(usbd_task_event_t) <= 12, "size is not correct");
#ifndef TUC_DEVICE_STACKSIZE #ifndef CFG_TUD_TASK_STACKSIZE
#define TUC_DEVICE_STACKSIZE 150 #define CFG_TUD_TASK_STACKSIZE 150
#endif #endif
#ifndef CFG_TUSB_OS_TASK_PRIO #ifndef CFG_TUD_TASK_PRIO
#define CFG_TUSB_OS_TASK_PRIO 0 #define CFG_TUD_TASK_PRIO 0
#endif #endif
@ -215,7 +211,7 @@ tusb_error_t usbd_init (void)
_usbd_ctrl_sem = osal_semaphore_create(1, 0); _usbd_ctrl_sem = osal_semaphore_create(1, 0);
VERIFY(_usbd_q, TUSB_ERROR_OSAL_SEMAPHORE_FAILED); VERIFY(_usbd_q, TUSB_ERROR_OSAL_SEMAPHORE_FAILED);
osal_task_create(usbd_task, "usbd", TUC_DEVICE_STACKSIZE, NULL, CFG_TUSB_OS_TASK_PRIO); osal_task_create(usbd_task, "usbd", CFG_TUD_TASK_STACKSIZE, NULL, CFG_TUD_TASK_PRIO);
//------------- Descriptor Check -------------// //------------- Descriptor Check -------------//
TU_ASSERT(tusbd_descriptor_pointers.p_device != NULL && tusbd_descriptor_pointers.p_configuration != NULL, TUSB_ERROR_DESCRIPTOR_CORRUPTED); TU_ASSERT(tusbd_descriptor_pointers.p_device != NULL && tusbd_descriptor_pointers.p_configuration != NULL, TUSB_ERROR_DESCRIPTOR_CORRUPTED);
@ -250,37 +246,20 @@ static tusb_error_t usbd_main_st(void)
OSAL_SUBTASK_BEGIN OSAL_SUBTASK_BEGIN
tusb_error_t error; tusb_error_t err;
error = TUSB_ERROR_NONE; err = TUSB_ERROR_NONE;
memclr_(&event, sizeof(usbd_task_event_t)); memclr_(&event, sizeof(usbd_task_event_t));
#if 1 osal_queue_receive(_usbd_q, &event, OSAL_TIMEOUT_WAIT_FOREVER, &err);
osal_queue_receive(_usbd_q, &event, OSAL_TIMEOUT_WAIT_FOREVER, &error);
STASK_ASSERT_ERR(error);
#else
enum { ROUTINE_INTERVAL_MS = 10 };
osal_queue_receive(_usbd_q, &event, ROUTINE_INTERVAL_MS, &error);
if ( error != TUSB_ERROR_NONE )
{
// time out, run class routine then
if ( error == TUSB_ERROR_OSAL_TIMEOUT)
{
for (uint8_t class_code = TUSB_CLASS_AUDIO; class_code < USBD_CLASS_DRIVER_COUNT; class_code++)
{
if ( usbd_class_drivers[class_code].routine ) usbd_class_drivers[class_code].routine();
}
}
STASK_RETURN(error);
}
#endif
if ( USBD_EVENTID_SETUP_RECEIVED == event.event_id ) if ( USBD_EVENTID_SETUP_RECEIVED == event.event_id )
{ {
STASK_INVOKE( proc_control_request_st(event.rhport, &event.setup_received), error ); STASK_INVOKE( proc_control_request_st(event.rhport, &event.setup_received), err );
}else if (USBD_EVENTID_XFER_DONE == event.event_id) }
else if (USBD_EVENTID_XFER_DONE == event.event_id)
{ {
// TODO only call respective interface callback
// Call class handling function. Those doest not own the endpoint should check and return // Call class handling function. Those doest not own the endpoint should check and return
for (uint8_t class_code = TUSB_CLASS_AUDIO; class_code < USBD_CLASS_DRIVER_COUNT; class_code++) for (uint8_t class_code = TUSB_CLASS_AUDIO; class_code < USBD_CLASS_DRIVER_COUNT; class_code++)
{ {
@ -289,7 +268,8 @@ static tusb_error_t usbd_main_st(void)
usbd_class_drivers[class_code].xfer_cb( event.rhport, event.xfer_done.ep_addr, (tusb_event_t) event.sub_event_id, event.xfer_done.xferred_byte); usbd_class_drivers[class_code].xfer_cb( event.rhport, event.xfer_done.ep_addr, (tusb_event_t) event.sub_event_id, event.xfer_done.xferred_byte);
} }
} }
}else if (USBD_EVENTID_SOF == event.event_id) }
else if (USBD_EVENTID_SOF == event.event_id)
{ {
for (uint8_t class_code = TUSB_CLASS_AUDIO; class_code < USBD_CLASS_DRIVER_COUNT; class_code++) for (uint8_t class_code = TUSB_CLASS_AUDIO; class_code < USBD_CLASS_DRIVER_COUNT; class_code++)
{ {

View File

@ -42,8 +42,8 @@
#define _TINY_USB_SOURCE_FILE_ #define _TINY_USB_SOURCE_FILE_
#ifndef CFG_TUSB_OS_TASK_PRIO #ifndef CFG_TUD_TASK_PRIO
#define CFG_TUSB_OS_TASK_PRIO 0 #define CFG_TUD_TASK_PRIO 0
#endif #endif
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
@ -150,7 +150,7 @@ tusb_error_t usbh_init(void)
enum_queue_hdl = osal_queue_create( ENUM_QUEUE_DEPTH, sizeof(uint32_t) ); enum_queue_hdl = osal_queue_create( ENUM_QUEUE_DEPTH, sizeof(uint32_t) );
TU_ASSERT(enum_queue_hdl, TUSB_ERROR_OSAL_QUEUE_FAILED); TU_ASSERT(enum_queue_hdl, TUSB_ERROR_OSAL_QUEUE_FAILED);
osal_task_create(usbh_enumeration_task, "usbh", 200, NULL, CFG_TUSB_OS_TASK_PRIO); osal_task_create(usbh_enumeration_task, "usbh", 200, NULL, CFG_TUD_TASK_PRIO);
//------------- Semaphore, Mutex for Control Pipe -------------// //------------- Semaphore, Mutex for Control Pipe -------------//
for(uint8_t i=0; i<CFG_TUSB_HOST_DEVICE_MAX+1; i++) // including address zero for(uint8_t i=0; i<CFG_TUSB_HOST_DEVICE_MAX+1; i++) // including address zero

View File

@ -134,8 +134,8 @@
#define CFG_TUSB_OS OPT_OS_NONE #define CFG_TUSB_OS OPT_OS_NONE
#endif #endif
#if (CFG_TUSB_OS != OPT_OS_NONE) && !defined (CFG_TUSB_OS_TASK_PRIO) #if (CFG_TUSB_OS != OPT_OS_NONE) && !defined (CFG_TUD_TASK_PRIO)
#error CFG_TUSB_OS_TASK_PRIO need to be defined (hint: use the highest if possible) #error CFG_TUD_TASK_PRIO need to be defined (hint: use the highest if possible)
#endif #endif
//#ifndef CFG_TUSB_CONFIGURATION_MAX //#ifndef CFG_TUSB_CONFIGURATION_MAX