Changeset 0f4bff8 in mainline for uspace/drv/bus/usb/usbhub/usbhub.c
- Timestamp:
- 2013-01-24T21:19:56Z (11 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- ffa254f1
- Parents:
- ef40434
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/usbhub/usbhub.c
ref40434 r0f4bff8 99 99 fibril_condvar_initialize(&hub_dev->pending_ops_cv); 100 100 101 102 int opResult = usb_pipe_start_long_transfer(&usb_dev->ctrl_pipe); 101 usb_pipe_t *control_pipe = usb_device_get_default_pipe(usb_dev); 102 103 int opResult = usb_pipe_start_long_transfer(control_pipe); 103 104 if (opResult != EOK) { 104 105 usb_log_error("Failed to start long ctrl pipe transfer: %s\n", … … 110 111 opResult = usb_set_first_configuration(usb_dev); 111 112 if (opResult != EOK) { 112 usb_pipe_end_long_transfer( &usb_dev->ctrl_pipe);113 usb_pipe_end_long_transfer(control_pipe); 113 114 usb_log_error("Could not set hub configuration: %s\n", 114 115 str_error(opResult)); … … 119 120 opResult = usb_hub_process_hub_specific_info(hub_dev); 120 121 if (opResult != EOK) { 121 usb_pipe_end_long_transfer( &usb_dev->ctrl_pipe);122 usb_pipe_end_long_transfer(control_pipe); 122 123 usb_log_error("Could process hub specific info, %s\n", 123 124 str_error(opResult)); … … 130 131 fun_exposed, HUB_FNC_NAME); 131 132 if (hub_dev->hub_fun == NULL) { 132 usb_pipe_end_long_transfer( &usb_dev->ctrl_pipe);133 usb_pipe_end_long_transfer(control_pipe); 133 134 usb_log_error("Failed to create hub function.\n"); 134 135 return ENOMEM; … … 138 139 opResult = ddf_fun_bind(hub_dev->hub_fun); 139 140 if (opResult != EOK) { 140 usb_pipe_end_long_transfer( &usb_dev->ctrl_pipe);141 usb_pipe_end_long_transfer(control_pipe); 141 142 usb_log_error("Failed to bind hub function: %s.\n", 142 143 str_error(opResult)); … … 151 152 usb_hub_polling_terminated_callback, hub_dev); 152 153 if (opResult != EOK) { 153 usb_pipe_end_long_transfer( &usb_dev->ctrl_pipe);154 usb_pipe_end_long_transfer(control_pipe); 154 155 /* Function is already bound */ 155 156 ddf_fun_unbind(hub_dev->hub_fun); … … 163 164 ddf_dev_get_name(hub_dev->usb_device->ddf_dev), hub_dev->port_count); 164 165 165 usb_pipe_end_long_transfer( &usb_dev->ctrl_pipe);166 usb_pipe_end_long_transfer(control_pipe); 166 167 return EOK; 167 168 } … … 186 187 { 187 188 assert(usb_dev); 188 usb_hub_dev_t *hub = usb_dev ->driver_data;189 usb_hub_dev_t *hub = usb_device_data_get(usb_dev); 189 190 assert(hub); 190 191 unsigned tries = 10; … … 271 272 /* Get hub descriptor. */ 272 273 usb_log_debug("Retrieving descriptor\n"); 273 usb_pipe_t *control_pipe = &hub_dev->usb_device->ctrl_pipe; 274 usb_pipe_t *control_pipe = 275 usb_device_get_default_pipe(hub_dev->usb_device); 274 276 275 277 usb_hub_descriptor_header_t descriptor; … … 360 362 361 363 // TODO: Make sure that the cast is correct 362 usb_standard_configuration_descriptor_t *config_descriptor364 const usb_standard_configuration_descriptor_t *config_descriptor 363 365 = (usb_standard_configuration_descriptor_t *) 364 366 usb_device->descriptors.configuration; … … 367 369 * usb_device->descriptors.configuration i.e. The first one. */ 368 370 const int opResult = usb_request_set_configuration( 369 &usb_device->ctrl_pipe, config_descriptor->configuration_number); 371 usb_device_get_default_pipe(usb_device), 372 config_descriptor->configuration_number); 370 373 if (opResult != EOK) { 371 374 usb_log_error("Failed to set hub configuration: %s.\n", … … 427 430 assert(hub_dev->usb_device); 428 431 usb_log_debug("Global interrupt on a hub\n"); 429 usb_pipe_t *control_pipe = &hub_dev->usb_device->ctrl_pipe; 432 usb_pipe_t *control_pipe = 433 usb_device_get_default_pipe(hub_dev->usb_device); 430 434 431 435 usb_hub_status_t status; … … 451 455 /* Ack change in hub OC flag */ 452 456 const int ret = usb_request_clear_feature( 453 &hub_dev->usb_device->ctrl_pipe, USB_REQUEST_TYPE_CLASS,457 control_pipe, USB_REQUEST_TYPE_CLASS, 454 458 USB_REQUEST_RECIPIENT_DEVICE, 455 459 USB_HUB_FEATURE_C_HUB_OVER_CURRENT, 0);
Note:
See TracChangeset
for help on using the changeset viewer.