summaryrefslogtreecommitdiff
path: root/tinyusb/class
diff options
context:
space:
mode:
authorhathach <[email protected]>2013-09-21 00:42:39 +0700
committerhathach <[email protected]>2013-09-21 00:42:39 +0700
commit295612b48f396fa2234c109be4b73294e5c6c27c (patch)
tree9e614d97ed6e16e615c8e1b7e23cf01a9c699f39 /tinyusb/class
parentf8f398a6813567306acd2e9dcfae199c3ecbad3a (diff)
remove ATTR_WEAK for all necessary driver callback
fix ceedling tests
Diffstat (limited to 'tinyusb/class')
-rw-r--r--tinyusb/class/cdc_host.h12
-rw-r--r--tinyusb/class/cdc_rndis_host.c8
-rw-r--r--tinyusb/class/hid_host.c8
-rw-r--r--tinyusb/class/hid_host.h14
4 files changed, 19 insertions, 23 deletions
diff --git a/tinyusb/class/cdc_host.h b/tinyusb/class/cdc_host.h
index 393eec228..dfc1eba7b 100644
--- a/tinyusb/class/cdc_host.h
+++ b/tinyusb/class/cdc_host.h
@@ -70,9 +70,9 @@ tusb_error_t tusbh_cdc_send(uint8_t dev_addr, void const * p_data, uint32_t leng
tusb_error_t tusbh_cdc_receive(uint8_t dev_addr, void * p_buffer, uint32_t length, bool is_notify);
//------------- CDC Application Callback -------------//
-ATTR_WEAK void tusbh_cdc_mounted_cb(uint8_t dev_addr);
-ATTR_WEAK void tusbh_cdc_unmounted_isr(uint8_t dev_addr);
-ATTR_WEAK void tusbh_cdc_xfer_isr(uint8_t dev_addr, tusb_event_t event, cdc_pipeid_t pipe_id, uint32_t xferred_bytes);
+void tusbh_cdc_mounted_cb(uint8_t dev_addr);
+void tusbh_cdc_unmounted_isr(uint8_t dev_addr);
+void tusbh_cdc_xfer_isr(uint8_t dev_addr, tusb_event_t event, cdc_pipeid_t pipe_id, uint32_t xferred_bytes);
#if TUSB_CFG_HOST_CDC_RNDIS
@@ -83,9 +83,9 @@ bool tusbh_cdc_rndis_is_mounted(uint8_t dev_addr) ATTR_PURE ATTR_WARN_UNUSED_RES
tusb_error_t tusbh_cdc_rndis_get_mac_addr(uint8_t dev_addr, uint8_t mac_address[6]);
//------------- RNDIS Application Callback (overshadow CDC callbacks) -------------//
-ATTR_WEAK void tusbh_cdc_rndis_mounted_cb(uint8_t dev_addr);
-ATTR_WEAK void tusbh_cdc_rndis_unmounted_isr(uint8_t dev_addr);
-ATTR_WEAK void tusbh_cdc_rndis_xfer_isr(uint8_t dev_addr, tusb_event_t event, cdc_pipeid_t pipe_id, uint32_t xferred_bytes);
+void tusbh_cdc_rndis_mounted_cb(uint8_t dev_addr);
+void tusbh_cdc_rndis_unmounted_isr(uint8_t dev_addr);
+void tusbh_cdc_rndis_xfer_isr(uint8_t dev_addr, tusb_event_t event, cdc_pipeid_t pipe_id, uint32_t xferred_bytes);
diff --git a/tinyusb/class/cdc_rndis_host.c b/tinyusb/class/cdc_rndis_host.c
index 51d6c3723..af0fe9a05 100644
--- a/tinyusb/class/cdc_rndis_host.c
+++ b/tinyusb/class/cdc_rndis_host.c
@@ -133,6 +133,7 @@ void rndish_init(void)
void rndish_close(uint8_t dev_addr)
{
osal_semaphore_reset( rndish_data[dev_addr-1].sem_notification_hdl );
+// memclr_(&rndish_data[dev_addr-1], sizeof(rndish_data_t)); TODO need to move semaphore & its handle out before memclr
}
@@ -220,12 +221,7 @@ tusb_error_t rndish_open_subtask(uint8_t dev_addr, cdch_data_t *p_cdc)
rndis_msg_set_cmplt_t * const p_set_cmpt = (rndis_msg_set_cmplt_t *) msg_payload;
SUBTASK_ASSERT(p_set_cmpt->type == RNDIS_MSG_SET_CMPLT && p_set_cmpt->status == RNDIS_STATUS_SUCCESS);
-
- //
- if ( tusbh_cdc_rndis_mounted_cb )
- {
- tusbh_cdc_rndis_mounted_cb(dev_addr);
- }
+ tusbh_cdc_rndis_mounted_cb(dev_addr);
OSAL_SUBTASK_END
}
diff --git a/tinyusb/class/hid_host.c b/tinyusb/class/hid_host.c
index e3d74fa12..f3dff2eed 100644
--- a/tinyusb/class/hid_host.c
+++ b/tinyusb/class/hid_host.c
@@ -310,17 +310,17 @@ void hidh_isr(pipe_handle_t pipe_hdl, tusb_event_t event, uint32_t xferred_bytes
void hidh_close(uint8_t dev_addr)
{
#if TUSB_CFG_HOST_HID_KEYBOARD
- hidh_interface_close(dev_addr, &keyboard_data[dev_addr-1]);
- if (tusbh_hid_keyboard_unmounted_isr)
+ if ( pipehandle_is_valid( keyboard_data[dev_addr-1].pipe_hdl ) )
{
+ hidh_interface_close(dev_addr, &keyboard_data[dev_addr-1]);
tusbh_hid_keyboard_unmounted_isr(dev_addr);
}
#endif
#if TUSB_CFG_HOST_HID_MOUSE
- hidh_interface_close(dev_addr, &mouse_data[dev_addr-1]);
- if( tusbh_hid_mouse_unmounted_isr )
+ if( pipehandle_is_valid( mouse_data[dev_addr-1].pipe_hdl ) )
{
+ hidh_interface_close(dev_addr, &mouse_data[dev_addr-1]);
tusbh_hid_mouse_unmounted_isr( dev_addr );
}
#endif
diff --git a/tinyusb/class/hid_host.h b/tinyusb/class/hid_host.h
index 179e6fa25..6a8dc8a0d 100644
--- a/tinyusb/class/hid_host.h
+++ b/tinyusb/class/hid_host.h
@@ -63,9 +63,9 @@ bool tusbh_hid_keyboard_is_mounted(uint8_t dev_addr) ATTR_PURE ATTR_WAR
tusb_error_t tusbh_hid_keyboard_get_report(uint8_t dev_addr, void * report) /*ATTR_WARN_UNUSED_RESULT*/;
tusb_interface_status_t tusbh_hid_keyboard_status(uint8_t dev_addr) ATTR_WARN_UNUSED_RESULT;
//------------- Application Callback -------------//
-ATTR_WEAK void tusbh_hid_keyboard_isr(uint8_t dev_addr, tusb_event_t event);
-ATTR_WEAK void tusbh_hid_keyboard_mounted_cb(uint8_t dev_addr);
-ATTR_WEAK void tusbh_hid_keyboard_unmounted_isr(uint8_t dev_addr);
+void tusbh_hid_keyboard_isr(uint8_t dev_addr, tusb_event_t event);
+void tusbh_hid_keyboard_mounted_cb(uint8_t dev_addr);
+void tusbh_hid_keyboard_unmounted_isr(uint8_t dev_addr);
//--------------------------------------------------------------------+
// MOUSE Application API
@@ -74,9 +74,9 @@ bool tusbh_hid_mouse_is_mounted(uint8_t dev_addr) ATTR_PURE ATTR_WARN_U
tusb_error_t tusbh_hid_mouse_get_report(uint8_t dev_addr, void* report) /*ATTR_WARN_UNUSED_RESULT*/;
tusb_interface_status_t tusbh_hid_mouse_status(uint8_t dev_addr) ATTR_WARN_UNUSED_RESULT;
//------------- Application Callback -------------//
-ATTR_WEAK void tusbh_hid_mouse_isr(uint8_t dev_addr, tusb_event_t event);
-ATTR_WEAK void tusbh_hid_mouse_mounted_cb(uint8_t dev_addr);
-ATTR_WEAK void tusbh_hid_mouse_unmounted_isr(uint8_t dev_addr);
+void tusbh_hid_mouse_isr(uint8_t dev_addr, tusb_event_t event);
+void tusbh_hid_mouse_mounted_cb(uint8_t dev_addr);
+void tusbh_hid_mouse_unmounted_isr(uint8_t dev_addr);
//--------------------------------------------------------------------+
// GENERIC Application API
@@ -87,7 +87,7 @@ tusb_error_t tusbh_hid_generic_set_report(uint8_t dev_addr, void* report, bool
tusb_interface_status_t tusbh_hid_generic_get_status(uint8_t dev_addr) ATTR_WARN_UNUSED_RESULT;
tusb_interface_status_t tusbh_hid_generic_set_status(uint8_t dev_addr) ATTR_WARN_UNUSED_RESULT;
//------------- Application Callback -------------//
-ATTR_WEAK void tusbh_hid_generic_isr(uint8_t dev_addr, tusb_event_t event);
+void tusbh_hid_generic_isr(uint8_t dev_addr, tusb_event_t event);
//--------------------------------------------------------------------+
// USBH-CLASS DRIVER API