diff --git a/demos/bsp/readme.md b/demos/bsp/readme.md new file mode 100644 index 000000000..86c5c59e5 --- /dev/null +++ b/demos/bsp/readme.md @@ -0,0 +1 @@ +# Board Supported Package (BSP) # \ No newline at end of file diff --git a/tests/test/host/hid/test_hidh_keyboard.c b/tests/test/host/hid/test_hidh_keyboard.c index da00e9266..a92040639 100644 --- a/tests/test/host/hid/test_hidh_keyboard.c +++ b/tests/test/host/hid/test_hidh_keyboard.c @@ -102,20 +102,20 @@ void test_keyboard_init(void) void test_keyboard_is_supported_fail_unplug(void) { tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_UNPLUG); - TEST_ASSERT_FALSE( tusbh_hid_keyboard_is_supported(dev_addr) ); + TEST_ASSERT_FALSE( tusbh_hid_keyboard_is_mounted(dev_addr) ); } void test_keyboard_is_supported_fail_not_opened(void) { hidh_init(); tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_CONFIGURED); - TEST_ASSERT_FALSE( tusbh_hid_keyboard_is_supported(dev_addr) ); + TEST_ASSERT_FALSE( tusbh_hid_keyboard_is_mounted(dev_addr) ); } void test_keyboard_is_supported_ok(void) { tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_CONFIGURED); - TEST_ASSERT_TRUE( tusbh_hid_keyboard_is_supported(dev_addr) ); + TEST_ASSERT_TRUE( tusbh_hid_keyboard_is_mounted(dev_addr) ); } void test_keyboard_open_ok(void) @@ -137,7 +137,7 @@ void test_keyboard_open_ok(void) length); tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_CONFIGURED); - TEST_ASSERT_TRUE( tusbh_hid_keyboard_is_supported(dev_addr) ); + TEST_ASSERT_TRUE( tusbh_hid_keyboard_is_mounted(dev_addr) ); TEST_ASSERT_EQUAL(TUSB_INTERFACE_STATUS_READY, p_hidh_kbd->status); } diff --git a/tests/test/host/hid/test_hidh_mouse.c b/tests/test/host/hid/test_hidh_mouse.c index c169a6099..27d32212c 100644 --- a/tests/test/host/hid/test_hidh_mouse.c +++ b/tests/test/host/hid/test_hidh_mouse.c @@ -91,20 +91,20 @@ void test_mouse_init(void) void test_mouse_is_supported_fail_unplug(void) { tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_UNPLUG); - TEST_ASSERT_FALSE( tusbh_hid_mouse_is_supported(dev_addr) ); + TEST_ASSERT_FALSE( tusbh_hid_mouse_is_mounted(dev_addr) ); } void test_mouse_is_supported_fail_not_opened(void) { hidh_init(); tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_CONFIGURED); - TEST_ASSERT_FALSE( tusbh_hid_mouse_is_supported(dev_addr) ); + TEST_ASSERT_FALSE( tusbh_hid_mouse_is_mounted(dev_addr) ); } void test_mouse_is_supported_ok(void) { tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_CONFIGURED); - TEST_ASSERT_TRUE( tusbh_hid_mouse_is_supported(dev_addr) ); + TEST_ASSERT_TRUE( tusbh_hid_mouse_is_mounted(dev_addr) ); } void test_mouse_open_ok(void) @@ -118,7 +118,7 @@ void test_mouse_open_ok(void) tusbh_hid_mouse_isr_Expect(dev_addr, 0, TUSB_EVENT_INTERFACE_OPEN); //------------- Code Under TEST -------------// - TEST_ASSERT_EQUAL(TUSB_ERROR_NONE, hidh_open_subtask(dev_addr, p_mouse_interface_desc, &length)); + TEST_ASSERT_STATUS( hidh_open_subtask(dev_addr, p_mouse_interface_desc, &length)); TEST_ASSERT_PIPE_HANDLE(pipe_hdl, p_hidh_mouse->pipe_hdl); TEST_ASSERT_EQUAL(8, p_hidh_mouse->report_size); @@ -126,7 +126,7 @@ void test_mouse_open_ok(void) length); tusbh_device_get_state_IgnoreAndReturn(TUSB_DEVICE_STATE_CONFIGURED); - TEST_ASSERT_TRUE( tusbh_hid_mouse_is_supported(dev_addr) ); + TEST_ASSERT_TRUE( tusbh_hid_mouse_is_mounted(dev_addr) ); TEST_ASSERT_EQUAL(TUSB_INTERFACE_STATUS_READY, p_hidh_mouse->status); } @@ -175,7 +175,7 @@ void test_mouse_get_ok() hcd_pipe_xfer_ExpectAndReturn(p_hidh_mouse->pipe_hdl, (uint8_t*) &report, p_hidh_mouse->report_size, true, TUSB_ERROR_NONE); //------------- Code Under TEST -------------// - TEST_ASSERT_EQUAL(TUSB_ERROR_NONE, tusbh_hid_mouse_get_report(dev_addr, 0, &report)); + TEST_ASSERT_STATUS( tusbh_hid_mouse_get_report(dev_addr, 0, &report)); TEST_ASSERT_EQUAL(TUSB_INTERFACE_STATUS_BUSY, tusbh_hid_mouse_status(dev_addr, 0)); } diff --git a/tinyusb/class/hid_host.c b/tinyusb/class/hid_host.c index c3fa64273..a45861006 100644 --- a/tinyusb/class/hid_host.c +++ b/tinyusb/class/hid_host.c @@ -125,7 +125,7 @@ uint8_t const hid_keycode_to_ascii_tbl[2][128] = STATIC_ hidh_interface_info_t keyboard_data[TUSB_CFG_HOST_DEVICE_MAX]; // does not have addr0, index = dev_address-1 //------------- KEYBOARD PUBLIC API (parameter validation required) -------------// -bool tusbh_hid_keyboard_is_supported(uint8_t dev_addr) +bool tusbh_hid_keyboard_is_mounted(uint8_t dev_addr) { return tusbh_device_is_configured(dev_addr) && pipehandle_is_valid(keyboard_data[dev_addr-1].pipe_hdl); } @@ -151,7 +151,7 @@ tusb_interface_status_t tusbh_hid_keyboard_status(uint8_t dev_addr, uint8_t inst STATIC_ hidh_interface_info_t mouse_data[TUSB_CFG_HOST_DEVICE_MAX]; // does not have addr0, index = dev_address-1 //------------- Public API -------------// -bool tusbh_hid_mouse_is_supported(uint8_t dev_addr) +bool tusbh_hid_mouse_is_mounted(uint8_t dev_addr) { return tusbh_device_is_configured(dev_addr) && pipehandle_is_valid(mouse_data[dev_addr-1].pipe_hdl); } diff --git a/tinyusb/class/hid_host.h b/tinyusb/class/hid_host.h index 47584562a..b67a20425 100644 --- a/tinyusb/class/hid_host.h +++ b/tinyusb/class/hid_host.h @@ -57,19 +57,18 @@ //--------------------------------------------------------------------+ // KEYBOARD Application API //--------------------------------------------------------------------+ -bool tusbh_hid_keyboard_is_supported(uint8_t dev_addr) ATTR_PURE ATTR_WARN_UNUSED_RESULT; -tusb_error_t tusbh_hid_keyboard_get_report(uint8_t dev_addr, uint8_t instance_num, void * report) ATTR_WARN_UNUSED_RESULT; -tusb_interface_status_t tusbh_hid_keyboard_status(uint8_t dev_addr, uint8_t instance_num) ATTR_WARN_UNUSED_RESULT; - extern uint8_t const hid_keycode_to_ascii_tbl[2][128]; // TODO used weak attr if build failed without KEYBOARD enabled +bool tusbh_hid_keyboard_is_mounted(uint8_t dev_addr) ATTR_PURE ATTR_WARN_UNUSED_RESULT; +tusb_error_t tusbh_hid_keyboard_get_report(uint8_t dev_addr, uint8_t instance_num, void * report) ATTR_WARN_UNUSED_RESULT; +tusb_interface_status_t tusbh_hid_keyboard_status(uint8_t dev_addr, uint8_t instance_num) ATTR_WARN_UNUSED_RESULT; //------------- Application Callback -------------// void tusbh_hid_keyboard_isr(uint8_t dev_addr, uint8_t instance_num, tusb_event_t event) ATTR_WEAK; //--------------------------------------------------------------------+ // MOUSE Application API //--------------------------------------------------------------------+ -bool tusbh_hid_mouse_is_supported(uint8_t dev_addr) ATTR_PURE ATTR_WARN_UNUSED_RESULT; +bool tusbh_hid_mouse_is_mounted(uint8_t dev_addr) ATTR_PURE ATTR_WARN_UNUSED_RESULT; tusb_error_t tusbh_hid_mouse_get_report(uint8_t dev_addr, uint8_t instance_num, void* report) ATTR_WARN_UNUSED_RESULT; tusb_interface_status_t tusbh_hid_mouse_status(uint8_t dev_addr, uint8_t instance_num) ATTR_WARN_UNUSED_RESULT; //------------- Application Callback -------------// @@ -78,6 +77,12 @@ void tusbh_hid_mouse_isr(uint8_t dev_addr, uint8_t instance_num, tusb_event_t ev //--------------------------------------------------------------------+ // GENERIC Application API //--------------------------------------------------------------------+ +bool tusbh_hid_generic_is_mounted(uint8_t dev_addr) ATTR_PURE ATTR_WARN_UNUSED_RESULT; +tusb_error_t tusbh_hid_generic_get_report(uint8_t dev_addr, uint8_t instance_num, void* report) ATTR_WARN_UNUSED_RESULT; +tusb_error_t tusbh_hid_generic_set_report(uint8_t dev_addr, uint8_t instance_num, void* report) ATTR_WARN_UNUSED_RESULT; +tusb_interface_status_t tusbh_hid_generic_status(uint8_t dev_addr, uint8_t instance_num) ATTR_WARN_UNUSED_RESULT; +//------------- Application Callback -------------// +void tusbh_hid_generic_isr(uint8_t dev_addr, uint8_t instance_num, tusb_event_t event) ATTR_WEAK; //--------------------------------------------------------------------+ // USBH-CLASS DRIVER API