diff options
| author | hathach <[email protected]> | 2013-01-31 13:11:50 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2013-01-31 13:11:50 +0700 |
| commit | 1b963f6a7117d754c47e860159ac0aa90d1db6dc (patch) | |
| tree | 775a8d0a163956a56dc01057545798e11b832efa /tinyusb | |
| parent | bef17fb67fc283cdc8cbda068d122c2a95c3b880 (diff) | |
change cmock ignore to args only
implementing usbh_host.c
Diffstat (limited to 'tinyusb')
| -rw-r--r-- | tinyusb/common/assertion.h | 2 | ||||
| -rw-r--r-- | tinyusb/common/errors.h | 1 | ||||
| -rw-r--r-- | tinyusb/host/usbd_host.c | 14 | ||||
| -rw-r--r-- | tinyusb/osal/osal.h | 9 | ||||
| -rw-r--r-- | tinyusb/osal/osal_common.h | 6 | ||||
| -rw-r--r-- | tinyusb/osal/osal_none.h | 2 |
6 files changed, 27 insertions, 7 deletions
diff --git a/tinyusb/common/assertion.h b/tinyusb/common/assertion.h index 5d26311fd..8383b2f0e 100644 --- a/tinyusb/common/assertion.h +++ b/tinyusb/common/assertion.h @@ -68,7 +68,7 @@ extern "C" //--------------------------------------------------------------------+ // Assert Helper //--------------------------------------------------------------------+ -#define ASSERT_FILENAME __BASE_FILE__ +#define ASSERT_FILENAME __FILE__ #define ASSERT_FUNCTION __PRETTY_FUNCTION__ #define ASSERT_STATEMENT _PRINTF("assert at %s: %s :%d :\n", ASSERT_FILENAME, ASSERT_FUNCTION, __LINE__) diff --git a/tinyusb/common/errors.h b/tinyusb/common/errors.h index a39e99b27..7af82920e 100644 --- a/tinyusb/common/errors.h +++ b/tinyusb/common/errors.h @@ -66,6 +66,7 @@ ENTRY(TUSB_ERROR_CLASS_DEVICE_DONT_SUPPORT)\ ENTRY(TUSB_ERROR_CLASS_DATA_NOT_AVAILABLE)\ ENTRY(TUSB_ERROR_OSAL_TIMEOUT)\ + ENTRY(TUSB_ERROR_OSAL_TASK_FAILED)\ ENTRY(TUSB_ERROR_OSAL_QUEUE_FAILED)\ ENTRY(TUSB_ERROR_FAILED)\ diff --git a/tinyusb/host/usbd_host.c b/tinyusb/host/usbd_host.c index 5ddaaaef5..c3489525d 100644 --- a/tinyusb/host/usbd_host.c +++ b/tinyusb/host/usbd_host.c @@ -58,9 +58,11 @@ //--------------------------------------------------------------------+ STATIC_ usbh_device_info_t device_info_pool[TUSB_CFG_HOST_DEVICE_MAX]; -#define ENUM_DEPTH 2 -//STATIC_ osal_queue_t queue_enumerate; -//STATIC_ uint8_t queue_enumerate_buffer[ENUM_DEPTH*sizeof(usbh_enumerate_t)]; +OSAL_TASK_DEF(enumeration_task, usbh_enumerate_task, 128, OSAL_PRIO_HIGH); + +#define ENUM_QUEUE_DEPTH 5 +OSAL_DEF_QUEUE(enumeration_queue, ENUM_QUEUE_DEPTH, uin32_t); +osal_queue_handle_t enumeration_queue_hdl; //--------------------------------------------------------------------+ // PUBLIC API (Parameter Verification is required) @@ -77,7 +79,11 @@ tusbh_device_status_t tusbh_device_status_get (tusb_handle_device_t const device tusb_error_t usbh_init(void) { memset(device_info_pool, 0, sizeof(usbh_device_info_t)*TUSB_CFG_HOST_DEVICE_MAX); -// ASSERT_STATUS(osal_queue_create()); + + ASSERT_STATUS( osal_task_create(&enumeration_task) ); + enumeration_queue_hdl = osal_queue_create(&enumeration_queue); + ASSERT_PTR(enumeration_queue_hdl, TUSB_ERROR_OSAL_QUEUE_FAILED); + return TUSB_ERROR_NONE; } diff --git a/tinyusb/osal/osal.h b/tinyusb/osal/osal.h index 609c660ad..0dfb73686 100644 --- a/tinyusb/osal/osal.h +++ b/tinyusb/osal/osal.h @@ -77,11 +77,14 @@ typedef uint32_t osal_timeout_t; //------------- Task -------------// +typedef uint32_t osal_task_t; +#define OSAL_TASK_DEF(name, code, stack_depth, prio) \ + osal_task_t name + #define OSAL_TASK_LOOP #define OSAL_TASK_LOOP_BEGIN #define OSAL_TASK_LOOP_END -typedef uint32_t osal_task_t; tusb_error_t osal_task_create(osal_task_t *task); //------------- Semaphore -------------// @@ -94,6 +97,10 @@ tusb_error_t osal_semaphore_post(osal_semaphore_handle_t const sem_hdl); //------------- Queue -------------// typedef uint32_t osal_queue_t; typedef void* osal_queue_handle_t; + +#define OSAL_DEF_QUEUE(name, queue_depth, type) \ + osal_queue_t name + osal_queue_handle_t osal_queue_create(osal_queue_t *queue); #endif diff --git a/tinyusb/osal/osal_common.h b/tinyusb/osal/osal_common.h index 263798b90..62a21ae74 100644 --- a/tinyusb/osal/osal_common.h +++ b/tinyusb/osal/osal_common.h @@ -65,6 +65,12 @@ enum OSAL_TIMEOUT_WAIT_FOREVER = 1 }; +typedef enum { + OSAL_PRIO_LOW, + OSAL_PRIO_NORMAL, + OSAL_PRIO_HIGH +}osal_prio_t; + #ifdef __cplusplus } #endif diff --git a/tinyusb/osal/osal_none.h b/tinyusb/osal/osal_none.h index 99f145a37..6833ada24 100644 --- a/tinyusb/osal/osal_none.h +++ b/tinyusb/osal/osal_none.h @@ -73,7 +73,7 @@ typedef uint32_t osal_timeout_t; // OSAL_TASK_LOOP_ENG // } //--------------------------------------------------------------------+ -#define osal_task_create(code, name, stack_depth, parameters, prio) +//#define osal_task_create(code, name, stack_depth, parameters, prio) #define OSAL_TASK_LOOP \ static uint16_t state = 0;\ |
