adding _mounted_isr & _umounted_isr callback for host keyboard & mouse

remove TUSB_EVENT_INTERFACE_OPEN & TUSB_EVENT_INTERFACE_CLOSE
This commit is contained in:
hathach
2013-07-03 12:46:12 +07:00
parent b0f45b3651
commit 4a8686e868
9 changed files with 49 additions and 29 deletions
+12 -4
View File
@@ -257,9 +257,9 @@ tusb_error_t hidh_open_subtask(uint8_t dev_addr, tusb_descriptor_interface_t con
if ( HID_PROTOCOL_KEYBOARD == p_interface_desc->bInterfaceProtocol)
{
SUBTASK_ASSERT_STATUS ( hidh_interface_open(dev_addr, p_interface_desc->bInterfaceNumber, p_endpoint_desc, &keyboard_data[dev_addr-1]) );
if ( tusbh_hid_keyboard_isr )
if ( tusbh_hid_keyboard_mounted_isr )
{
tusbh_hid_keyboard_isr(dev_addr, TUSB_EVENT_INTERFACE_OPEN);
tusbh_hid_keyboard_mounted_isr(dev_addr);
}
} else
#endif
@@ -268,9 +268,9 @@ tusb_error_t hidh_open_subtask(uint8_t dev_addr, tusb_descriptor_interface_t con
if ( HID_PROTOCOL_MOUSE == p_interface_desc->bInterfaceProtocol)
{
SUBTASK_ASSERT_STATUS ( hidh_interface_open(dev_addr, p_interface_desc->bInterfaceNumber, p_endpoint_desc, &mouse_data[dev_addr-1]) );
if (tusbh_hid_mouse_isr)
if (tusbh_hid_mouse_mounted_isr)
{
tusbh_hid_mouse_isr(dev_addr, TUSB_EVENT_INTERFACE_OPEN);
tusbh_hid_mouse_mounted_isr(dev_addr);
}
} else
#endif
@@ -324,10 +324,18 @@ 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)
{
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 )
{
tusbh_hid_mouse_unmounted_isr( dev_addr );
}
#endif
#if TUSB_CFG_HOST_HID_GENERIC
+4
View File
@@ -64,6 +64,8 @@ tusb_error_t tusbh_hid_keyboard_get_report(uint8_t dev_addr, void * report) ATT
tusb_interface_status_t tusbh_hid_keyboard_status(uint8_t dev_addr) ATTR_WARN_UNUSED_RESULT;
//------------- Application Callback -------------//
void tusbh_hid_keyboard_isr(uint8_t dev_addr, tusb_event_t event) ATTR_WEAK;
void tusbh_hid_keyboard_mounted_isr(uint8_t dev_addr) ATTR_WEAK;
void tusbh_hid_keyboard_unmounted_isr(uint8_t dev_addr) ATTR_WEAK;
//--------------------------------------------------------------------+
// MOUSE Application API
@@ -73,6 +75,8 @@ tusb_error_t tusbh_hid_mouse_get_report(uint8_t dev_addr, void* report) ATTR_WA
tusb_interface_status_t tusbh_hid_mouse_status(uint8_t dev_addr) ATTR_WARN_UNUSED_RESULT;
//------------- Application Callback -------------//
void tusbh_hid_mouse_isr(uint8_t dev_addr, tusb_event_t event) ATTR_WEAK;
void tusbh_hid_mouse_mounted_isr(uint8_t dev_addr) ATTR_WEAK;
void tusbh_hid_mouse_unmounted_isr(uint8_t dev_addr) ATTR_WEAK;
//--------------------------------------------------------------------+
// GENERIC Application API
-3
View File
@@ -200,9 +200,6 @@ typedef enum {
TUSB_EVENT_XFER_ERROR,
TUSB_EVENT_XFER_STALLED,
TUSB_EVENT_INTERFACE_OPEN,
TUSB_EVENT_INTERFACE_CLOSE,
TUSB_EVENT_BUS_RESET, // TODO refractor
TUSB_EVENT_SETUP_RECEIVED,
}tusb_event_t;