diff options
| author | hathach <[email protected]> | 2013-03-24 15:50:49 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2013-03-24 15:50:49 +0700 |
| commit | ce6398038635a55094d66eacdadaaa4d5b895625 (patch) | |
| tree | f4fda4969233df988cd0442426908a7f5b228e73 /tinyusb | |
| parent | 9c5ffa99328e1885cf75bedd2bfbcb30960a81dc (diff) | |
clean up:
- refractor tusb_handle_device_t device_hdl to uint8_t dev_addr
add keyboard_app.c/h
Diffstat (limited to 'tinyusb')
| -rw-r--r-- | tinyusb/class/hid_host.c | 12 | ||||
| -rw-r--r-- | tinyusb/class/hid_host.h | 5 | ||||
| -rw-r--r-- | tinyusb/host/usbh.c | 6 | ||||
| -rw-r--r-- | tinyusb/host/usbh.h | 42 |
4 files changed, 20 insertions, 45 deletions
diff --git a/tinyusb/class/hid_host.c b/tinyusb/class/hid_host.c index c46125b95..320957759 100644 --- a/tinyusb/class/hid_host.c +++ b/tinyusb/class/hid_host.c @@ -61,15 +61,15 @@ STATIC_ class_hid_keyboard_info_t keyboard_info_pool[TUSB_CFG_HOST_DEVICE_MAX]; //--------------------------------------------------------------------+ // PUBLIC API (Parameter Verification is required) //--------------------------------------------------------------------+ -tusb_error_t tusbh_hid_keyboard_get(tusb_handle_device_t const device_hdl, uint8_t instance_num, tusb_keyboard_report_t * const report) +tusb_error_t tusbh_hid_keyboard_get(uint8_t const dev_addr, uint8_t instance_num, tusb_keyboard_report_t * const report) { keyboard_interface_t *p_kbd; - ASSERT_INT(TUSB_DEVICE_STATE_CONFIGURED, tusbh_device_status_get(device_hdl), TUSB_ERROR_DEVICE_NOT_READY); + ASSERT_INT(TUSB_DEVICE_STATE_CONFIGURED, tusbh_device_status_get(dev_addr), TUSB_ERROR_DEVICE_NOT_READY); ASSERT_PTR(report, TUSB_ERROR_INVALID_PARA); ASSERT(instance_num < TUSB_CFG_HOST_HID_KEYBOARD_NO_INSTANCES_PER_DEVICE, TUSB_ERROR_INVALID_PARA); - p_kbd = &keyboard_info_pool[device_hdl].instance[instance_num]; + p_kbd = &keyboard_info_pool[dev_addr].instance[instance_num]; ASSERT(0 != p_kbd->pipe_in.dev_addr, TUSB_ERROR_CLASS_DEVICE_DONT_SUPPORT); @@ -80,11 +80,11 @@ tusb_error_t tusbh_hid_keyboard_get(tusb_handle_device_t const device_hdl, uint8 return TUSB_ERROR_NONE; } -uint8_t tusbh_hid_keyboard_no_instances(tusb_handle_device_t const device_hdl) +uint8_t tusbh_hid_keyboard_no_instances(uint8_t const dev_addr) { - ASSERT_INT(TUSB_DEVICE_STATE_CONFIGURED, tusbh_device_status_get(device_hdl), 0); + ASSERT_INT(TUSB_DEVICE_STATE_CONFIGURED, tusbh_device_status_get(dev_addr), 0); - return keyboard_info_pool[device_hdl].instance_count; + return keyboard_info_pool[dev_addr].instance_count; } //--------------------------------------------------------------------+ diff --git a/tinyusb/class/hid_host.h b/tinyusb/class/hid_host.h index c0cb81702..669e962d6 100644 --- a/tinyusb/class/hid_host.h +++ b/tinyusb/class/hid_host.h @@ -62,8 +62,9 @@ //--------------------------------------------------------------------+ // APPLICATION API //--------------------------------------------------------------------+ -uint8_t tusbh_hid_keyboard_no_instances(tusb_handle_device_t const device_hdl) ATTR_WARN_UNUSED_RESULT; -tusb_error_t tusbh_hid_keyboard_get(tusb_handle_device_t const handle, uint8_t instance_num, tusb_keyboard_report_t * const report) ATTR_WARN_UNUSED_RESULT; +uint8_t tusbh_hid_keyboard_no_instances(uint8_t const dev_addr) ATTR_WARN_UNUSED_RESULT; +tusb_error_t tusbh_hid_keyboard_get(uint8_t const handle, uint8_t const instance_num, tusb_keyboard_report_t * const report) ATTR_WARN_UNUSED_RESULT; +pipe_status_t tusbh_hid_keyboard_pipe_status(uint8_t const handle, uint8_t const instance_num); //--------------------------------------------------------------------+ // INTERNAL API diff --git a/tinyusb/host/usbh.c b/tinyusb/host/usbh.c index c841d3ceb..b22478b72 100644 --- a/tinyusb/host/usbh.c +++ b/tinyusb/host/usbh.c @@ -98,10 +98,10 @@ static inline uint8_t get_configure_number_for_device(tusb_descriptor_device_t* //--------------------------------------------------------------------+ // PUBLIC API (Parameter Verification is required) //--------------------------------------------------------------------+ -tusbh_device_status_t tusbh_device_status_get (tusb_handle_device_t const device_hdl) +tusbh_device_status_t tusbh_device_status_get (uint8_t const dev_addr) { - ASSERT(device_hdl <= TUSB_CFG_HOST_DEVICE_MAX, 0); - return usbh_device_info_pool[device_hdl].state; + ASSERT(dev_addr <= TUSB_CFG_HOST_DEVICE_MAX, 0); + return usbh_device_info_pool[dev_addr].state; } //--------------------------------------------------------------------+ diff --git a/tinyusb/host/usbh.h b/tinyusb/host/usbh.h index 2934e4c3c..d0e29a4ff 100644 --- a/tinyusb/host/usbh.h +++ b/tinyusb/host/usbh.h @@ -63,36 +63,6 @@ //--------------------------------------------------------------------+ // MACRO CONSTANT TYPEDEF //--------------------------------------------------------------------+ -#define CLASS_TABLE(ENTRY_EXPANDER) \ - ENTRY_EXPANDER(TUSB_CLASS_AUDIO)\ - ENTRY_EXPANDER(TUSB_CLASS_CDC)\ - ENTRY_EXPANDER(TUSB_CLASS_HID)\ - ENTRY_EXPANDER(TUSB_CLASS_PHYSICAL)\ - ENTRY_EXPANDER(TUSB_CLASS_IMAGE)\ - ENTRY_EXPANDER(TUSB_CLASS_PRINTER)\ - ENTRY_EXPANDER(TUSB_CLASS_MSC)\ - ENTRY_EXPANDER(TUSB_CLASS_HUB)\ - ENTRY_EXPANDER(TUSB_CLASS_CDC_DATA)\ - ENTRY_EXPANDER(TUSB_CLASS_SMART_CARD)\ - ENTRY_EXPANDER(TUSB_CLASS_CONTENT_SECURITY)\ - ENTRY_EXPANDER(TUSB_CLASS_VIDEO)\ - ENTRY_EXPANDER(TUSB_CLASS_PERSONAL_HEALTHCARE)\ - ENTRY_EXPANDER(TUSB_CLASS_AUDIO_VIDEO)\ - -#define CLASS_LOOKUP_EXPAND(class_code) - -#define CLASS_LOOKUP_INIT_FUNCTION(class_code)\ - -#define CLASS_EXPANDER_INIT(class_code)\ - - - -// TUSB_CLASS_DIAGNOSTIC = 0xDC , -// TUSB_CLASS_WIRELESS_CONTROLLER = 0xE0 , -// TUSB_CLASS_MISC = 0xEF , -// TUSB_CLASS_APPLICATION_SPECIFIC = 0xEF , -// TUSB_CLASS_VENDOR_SPECIFIC = 0xFF - typedef enum pipe_status_{ PIPE_STATUS_READY = 0, PIPE_STATUS_BUSY, @@ -101,7 +71,6 @@ typedef enum pipe_status_{ } pipe_status_t; typedef uint32_t tusbh_flag_class_t; -typedef uint32_t tusb_handle_device_t; typedef uint8_t tusbh_device_status_t; typedef struct { @@ -117,12 +86,17 @@ typedef struct { //--------------------------------------------------------------------+ // APPLICATION API //--------------------------------------------------------------------+ +tusb_device_state_t tusbh_device_get_state(uint8_t dev_addr); + +//--------------------------------------------------------------------+ +// APPLICATION CALLBACK +//--------------------------------------------------------------------+ uint8_t tusbh_device_attached_cb (tusb_descriptor_device_t const *p_desc_device) ATTR_WEAK ATTR_WARN_UNUSED_RESULT; -void tusbh_device_mount_succeed_cb (tusb_handle_device_t device_hdl) ATTR_WEAK; +void tusbh_device_mount_succeed_cb (uint8_t dev_addr) ATTR_WEAK; void tusbh_device_mount_failed_cb(tusb_error_t error, tusb_descriptor_device_t const *p_desc_device) ATTR_WEAK; // TODO refractor remove desc_device -tusb_error_t tusbh_configuration_set (tusb_handle_device_t device_hdl, uint8_t configure_number) ATTR_WARN_UNUSED_RESULT; -tusbh_device_status_t tusbh_device_status_get (tusb_handle_device_t const device_hdl) ATTR_WARN_UNUSED_RESULT; +tusb_error_t tusbh_configuration_set (uint8_t dev_addr, uint8_t configure_number) ATTR_WARN_UNUSED_RESULT; +tusbh_device_status_t tusbh_device_status_get (uint8_t const dev_addr) ATTR_WARN_UNUSED_RESULT; #if TUSB_CFG_OS == TUSB_OS_NONE // TODO move later //static inline void tusb_tick_tock(void) ATTR_ALWAYS_INLINE; |
