Răsfoiți Sursa

change configure handle to device handle
change test case accordingly

hathach 13 ani în urmă
părinte
comite
fdc9a82e8c

+ 22 - 26
tests/test/host/test_hid_host_keyboard.c

@@ -41,7 +41,7 @@
 #include "mock_osal.h"
 #include "mock_usbd_host.h"
 
-tusb_device_info_t usbh_device_pool [2];
+usbh_device_info_t usbh_device_pool [2];
 
 tusb_keyboard_report_t sample_key[2] =
 {
@@ -55,21 +55,16 @@ tusb_keyboard_report_t sample_key[2] =
     }
 };
 
-tusb_handle_configure_t config_hdl;
+tusb_handle_device_t device_hdl;
 tusb_keyboard_report_t report;
-tusb_configure_info_t *p_cfg_info;
 
 void setUp(void)
 {
-  config_hdl = 1; // deviceID = 0 ; Configure = 1
+  device_hdl = 0; // deviceID = 0 ; Configure = 1
   memset(&report, 0, sizeof(tusb_keyboard_report_t));
-  p_cfg_info = NULL;
 
-  usbh_device_pool[0].configuration[0].classes.hid_keyboard.pipe_in = 1;
-  usbh_device_pool[0].configuration[0].classes.hid_keyboard.qid = 1;
-
-  usbh_device_pool[0].configuration[1].classes.hid_keyboard.pipe_in = 0;
-  usbh_device_pool[0].configuration[1].classes.hid_keyboard.qid = 0;
+  usbh_device_pool[0].configuration.classes.hid_keyboard.pipe_in = 1;
+  usbh_device_pool[0].configuration.classes.hid_keyboard.qid = 1;
 }
 
 void tearDown(void)
@@ -82,50 +77,51 @@ tusb_error_t queue_get_stub(osal_queue_id_t qid, uint32_t *data, osal_timeout_t
   return TUSB_ERROR_NONE;
 }
 
-tusb_error_t get_configure_class_not_support_stub(tusb_handle_configure_t configure_hdl, tusb_configure_info_t **pp_configure_info, int num_call)
+usbh_device_info_t* get_device_class_not_support_stub(tusb_handle_device_t device_hdl, int num_call)
 {
-  (*pp_configure_info) = &(usbh_device_pool[0].configuration[1]);
-  return TUSB_ERROR_NONE;
+  usbh_device_pool[0].configuration.classes.hid_keyboard.pipe_in = 0;
+  usbh_device_pool[0].configuration.classes.hid_keyboard.qid = 0;
+
+  return &(usbh_device_pool[0]);
 }
 
-tusb_error_t get_configure_stub(tusb_handle_configure_t configure_hdl, tusb_configure_info_t **pp_configure_info, int num_call)
+usbh_device_info_t* get_device_stub(tusb_handle_device_t device_hdl, int num_call)
 {
-  (*pp_configure_info) = &(usbh_device_pool[0].configuration[0]);
-  return TUSB_ERROR_NONE;
+  return &(usbh_device_pool[0]);
 }
 
 void test_keyboard_get_invalid_para()
 {
-  usbh_configure_info_get_IgnoreAndReturn(TUSB_ERROR_INVALID_PARA);
-  TEST_ASSERT_EQUAL(TUSB_ERROR_INVALID_PARA, tusbh_keyboard_get(config_hdl, NULL));
-  TEST_ASSERT_EQUAL(TUSB_ERROR_INVALID_PARA, tusbh_keyboard_get(config_hdl, &report));
+  usbh_device_info_get_IgnoreAndReturn(NULL);
+  TEST_ASSERT_EQUAL(TUSB_ERROR_INVALID_PARA, tusbh_keyboard_get(device_hdl, NULL));
+  TEST_ASSERT_EQUAL(TUSB_ERROR_INVALID_PARA, tusbh_keyboard_get(device_hdl, &report));
 }
 
 void test_keyboard_get_class_not_supported()
 {
-  usbh_configure_info_get_StubWithCallback(get_configure_class_not_support_stub);
+  usbh_device_info_get_StubWithCallback(get_device_class_not_support_stub);
 
-  TEST_ASSERT_EQUAL(TUSB_ERROR_CLASS_DEVICE_DONT_SUPPORT, tusbh_keyboard_get(config_hdl, &report));
+  TEST_ASSERT_EQUAL(TUSB_ERROR_CLASS_DEVICE_DONT_SUPPORT, tusbh_keyboard_get(device_hdl, &report));
 }
 
 void test_keyboard_get_from_empty_queue()
 {
-  usbh_configure_info_get_StubWithCallback(get_configure_stub);
+  usbh_device_info_get_StubWithCallback(get_device_stub);
   osal_queue_get_IgnoreAndReturn(TUSB_ERROR_OSAL_TIMEOUT);
 //  osal_queue_get_ExpectAndReturn( usbh_device_pool[0].configuration[0].classes.hid_keyboard.qid, );
 
-  TEST_ASSERT_EQUAL(TUSB_ERROR_OSAL_TIMEOUT, tusbh_keyboard_get(config_hdl, &report));
+  TEST_ASSERT_EQUAL(TUSB_ERROR_OSAL_TIMEOUT, tusbh_keyboard_get(device_hdl, &report));
 }
 
 void test_keyboard_get_ok()
 {
-  usbh_configure_info_get_StubWithCallback(get_configure_stub);
+  usbh_device_info_get_StubWithCallback(get_device_stub);
   osal_queue_get_StubWithCallback(queue_get_stub);
 
-  TEST_ASSERT_EQUAL(TUSB_ERROR_NONE, tusbh_keyboard_get(config_hdl, &report));
+  TEST_ASSERT_EQUAL(TUSB_ERROR_NONE, tusbh_keyboard_get(device_hdl, &report));
   TEST_ASSERT_EQUAL_MEMORY(&sample_key[0], &report, sizeof(tusb_keyboard_report_t));
 
-  TEST_ASSERT_EQUAL(TUSB_ERROR_NONE, tusbh_keyboard_get(config_hdl, &report));
+  TEST_ASSERT_EQUAL(TUSB_ERROR_NONE, tusbh_keyboard_get(device_hdl, &report));
   TEST_ASSERT_EQUAL_MEMORY(&sample_key[1], &report, sizeof(tusb_keyboard_report_t));
 }
 

+ 6 - 5
tinyusb/class/hid_host.c

@@ -41,18 +41,19 @@
 
 #include "hid_host.h"
 
-tusb_error_t tusbh_keyboard_get(tusb_handle_configure_t const config_hdl, tusb_keyboard_report_t * const report)
+tusb_error_t tusbh_keyboard_get(tusb_handle_device_t const device_hdl, tusb_keyboard_report_t * const report)
 {
-  tusb_configure_info_t *p_cfg_info;
+  usbh_device_info_t *p_device_info;
 
   pipe_handle_t pipe_in;
   osal_queue_id_t qid;
 
   ASSERT_PTR(report, TUSB_ERROR_INVALID_PARA);
-  ASSERT_STATUS( usbh_configure_info_get(config_hdl, &p_cfg_info) );
+  p_device_info = usbh_device_info_get(device_hdl);
+  ASSERT_PTR(p_device_info, TUSB_ERROR_INVALID_PARA);
 
-  pipe_in = p_cfg_info->classes.hid_keyboard.pipe_in;
-  qid     = p_cfg_info->classes.hid_keyboard.qid;
+  pipe_in = p_device_info->configuration.classes.hid_keyboard.pipe_in;
+  qid     = p_device_info->configuration.classes.hid_keyboard.qid;
 
   ASSERT(0 != pipe_in, TUSB_ERROR_CLASS_DEVICE_DONT_SUPPORT);
   ASSERT_STATUS( osal_queue_get(qid, (uint32_t*)report, OSAL_TIMEOUT_WAIT_FOREVER) );

+ 1 - 1
tinyusb/class/hid_host.h

@@ -57,7 +57,7 @@
 
 #include "hid.h"
 
-tusb_error_t tusbh_keyboard_get(tusb_handle_configure_t const handle, tusb_keyboard_report_t * const report);
+tusb_error_t tusbh_keyboard_get(tusb_handle_device_t const handle, tusb_keyboard_report_t * const report);
 
 #ifdef __cplusplus
 }

+ 1 - 1
tinyusb/host/usbd_host.c

@@ -50,6 +50,6 @@ tusb_error_t tusbh_keyboard_open(tusb_handle_device_t device_hdl, uint8_t config
 }
 #endif
 
-tusb_device_info_t usbh_device_pool[TUSB_CFG_HOST_DEVICE_MAX];
+usbh_device_info_t usbh_device_pool[TUSB_CFG_HOST_DEVICE_MAX];
 
 #endif

+ 7 - 31
tinyusb/host/usbd_host.h

@@ -71,61 +71,37 @@ typedef struct {
     //      hid_info_t hid_mouse;
     //      hid_info_t hid_generic;
   } classes;
-} tusb_configure_info_t;
+} usbh_configure_info_t;
 
 typedef struct {
   uint8_t core_id;
-  uint8_t configure_num;
-  uint8_t configure_active; // TODO CONFIG multiple only
-
 #if 0 // TODO allow configure for vendor/product
   uint16_t vendor_id;
   uint16_t product_id;
 #endif
 
-  tusb_configure_info_t configuration[TUSB_CFG_CONFIGURATION_MAX];
-} tusb_device_info_t;
+  usbh_configure_info_t configuration;
+} usbh_device_info_t;
+
+
 
 //--------------------------------------------------------------------+
 // Structures & Types
 //--------------------------------------------------------------------+
 typedef uint32_t tusb_handle_device_t;
-typedef uint32_t tusb_handle_configure_t;
-
-typedef struct {
-  uint8_t device_id;
-  uint8_t configure_num;
-} _tusb_handle_configure_t;
 
 //--------------------------------------------------------------------+
 // APPLICATION API
 //--------------------------------------------------------------------+
 void         tusbh_device_mounted_cb (tusb_error_t error, tusb_handle_device_t device_hdl, uint32_t *configure_flags, uint8_t number_of_configure);
+tusb_error_t tusbh_configuration_set     (tusb_handle_device_t const device_hdl, uint8_t const configure_number);
 
-tusb_error_t tusbh_configuration_set     (tusb_handle_device_t const device_hdl, uint8_t const configure_number, tusb_handle_configure_t *configure_hdl);
-
-//tusb_error_t tusbh_configure_get     (tusb_handle_device_t device_hdl, uint8_t configure_number, tusb_handle_configure_t *configure_handle);
-//tusb_error_t tusbh_class_open        (tusb_handle_device_t device_hdl, uint8_t class, tusb_handle_class_t *interface_handle);
-//tusb_error_t tusbh_interface_get_info(tusb_handle_interface_t interface_handle, tusb_descriptor_interface_t *interface_desc);
 
 // TODO hiding from application include
 //--------------------------------------------------------------------+
 // CLASS API
 //--------------------------------------------------------------------+
-tusb_error_t usbh_configure_info_get (tusb_handle_configure_t configure_hdl, tusb_configure_info_t **pp_configure_info);
-
-#if 0
-void tusbh_usbd_mounted(tusb_error_t error, tusb_handle_device_t device_hdl);
-
-tusb_error_t tusbh_usbd_get_configiure      (tusb_handle_device_t device_hdl  , tusb_handle_configure_t *configure_hdl);
-tusb_error_t tusbh_usbd_get_configiure_next (tusb_handle_configure_t prev_hdl , tusb_handle_configure_t *next_hdl);
-
-tusb_error_t tusbh_usbd_get_interface           (tusb_handle_configure_t configure_hdl , tusb_handle_interface_t *interface_hdl);
-tusb_error_t tusbh_usbd_get_interface_next      (tusb_handle_interface_t prev_hdl      , tusb_handle_interface_t *next_hdl);
-tusb_error_t tusbh_usbd_get_interface_alternate (tusb_handle_interface_t current_hdl   , tusb_handle_interface_t *alternate_hdl);
-#endif
-
-
+usbh_device_info_t* usbh_device_info_get (tusb_handle_device_t device_hdl);
 
 #ifdef __cplusplus
  }

+ 1 - 0
tinyusb/osal/osal_none.c

@@ -40,4 +40,5 @@
 #if TUSB_CFG_OS == TUSB_OS_NONE
 
 
+
 #endif

+ 2 - 0
tinyusb/osal/osal_none.h

@@ -55,6 +55,8 @@
  extern "C" {
 #endif
 
+#include "osal.h"
+
 //--------------------------------------------------------------------+
 // QUEUE API
 //--------------------------------------------------------------------+