summaryrefslogtreecommitdiff
path: root/tinyusb/class
diff options
context:
space:
mode:
authorhathach <[email protected]>2013-07-05 13:23:42 +0700
committerhathach <[email protected]>2013-07-05 13:23:42 +0700
commit374aea7a11b6b9986318707f5951b9c69ad00239 (patch)
treec162841d6049ec7904b791439a92b923cbc0f734 /tinyusb/class
parentc08c655fd120033f33fc40464018c743c646a512 (diff)
change usbh_control_xfer_subtask to use flat API instead of passing tusb_control_request_t struct
Diffstat (limited to 'tinyusb/class')
-rw-r--r--tinyusb/class/cdc_host.c4
-rw-r--r--tinyusb/class/cdc_rndis_host.c21
2 files changed, 8 insertions, 17 deletions
diff --git a/tinyusb/class/cdc_host.c b/tinyusb/class/cdc_host.c
index e0f4501ec..0e97c5d9a 100644
--- a/tinyusb/class/cdc_host.c
+++ b/tinyusb/class/cdc_host.c
@@ -204,8 +204,8 @@ tusb_error_t cdch_open_subtask(uint8_t dev_addr, tusb_descriptor_interface_t con
{
OSAL_SUBTASK_INVOKED_AND_WAIT( rndish_open_subtask(dev_addr, p_cdc), error );
}
-
- if ( TUSB_ERROR_NONE != error ) // device is not an rndis
+ else
+// if ( TUSB_ERROR_NONE != error ) // device is not an rndis
#endif
// FIXME mounted class flag is not set yet
diff --git a/tinyusb/class/cdc_rndis_host.c b/tinyusb/class/cdc_rndis_host.c
index ebb3285bb..024329b4b 100644
--- a/tinyusb/class/cdc_rndis_host.c
+++ b/tinyusb/class/cdc_rndis_host.c
@@ -107,23 +107,14 @@ tusb_error_t rndish_open_subtask(uint8_t dev_addr, cdch_data_t *p_cdc)
.max_xfer_size = 0x4000 // TODO mimic windows
};
- static tusb_control_request_t control_request =
- {
- .bmRequestType = {
- .direction = TUSB_DIR_HOST_TO_DEV,
- .type = TUSB_REQUEST_TYPE_CLASS,
- .recipient = TUSB_REQUEST_RECIPIENT_INTERFACE
- },
- .bRequest = SEND_ENCAPSULATED_COMMAND,
- .wLength = sizeof(rndis_msg_initialize_t)
-// .wIndex = p_cdc->interface_number,
- };
-
OSAL_SUBTASK_BEGIN
- control_request.wIndex = p_cdc->interface_number;
-
- OSAL_SUBTASK_INVOKED_AND_WAIT ( usbh_control_xfer_subtask(dev_addr, &control_request, (uint8_t*)&msg_init), error ) ;
+ OSAL_SUBTASK_INVOKED_AND_WAIT(
+ usbh_control_xfer_subtask( dev_addr, bm_request_type(TUSB_DIR_HOST_TO_DEV, TUSB_REQUEST_TYPE_CLASS, TUSB_REQUEST_RECIPIENT_INTERFACE),
+ SEND_ENCAPSULATED_COMMAND, 0, p_cdc->interface_number,
+ sizeof(rndis_msg_initialize_t), (uint8_t*)&msg_init ),
+ error
+ );
if ( tusbh_cdc_rndis_mounted_cb )
{