diff options
| author | hathach <[email protected]> | 2013-07-05 13:23:42 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2013-07-05 13:23:42 +0700 |
| commit | 374aea7a11b6b9986318707f5951b9c69ad00239 (patch) | |
| tree | c162841d6049ec7904b791439a92b923cbc0f734 /tinyusb/class | |
| parent | c08c655fd120033f33fc40464018c743c646a512 (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.c | 4 | ||||
| -rw-r--r-- | tinyusb/class/cdc_rndis_host.c | 21 |
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 ) { |
