Changeset 3bacee1 in mainline for uspace/drv/bus/usb/vhc
- Timestamp:
- 2018-04-12T16:27:17Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 3cf22f9
- Parents:
- 76d0981d
- git-author:
- Jiri Svoboda <jiri@…> (2018-04-11 19:25:33)
- git-committer:
- Jiri Svoboda <jiri@…> (2018-04-12 16:27:17)
- Location:
- uspace/drv/bus/usb/vhc/hub
- Files:
-
- 2 edited
-
virthub.c (modified) (3 diffs)
-
virthubops.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/vhc/hub/virthub.c
r76d0981d r3bacee1 101 101 .descriptor_type = USB_DESCTYPE_CONFIGURATION, 102 102 .total_length = 103 sizeof(usb_standard_configuration_descriptor_t) 104 + sizeof(std_interface_descriptor) 105 + sizeof(hub_descriptor) 106 + sizeof(endpoint_descriptor) 107 , 103 sizeof(usb_standard_configuration_descriptor_t) + 104 sizeof(std_interface_descriptor) + 105 sizeof(hub_descriptor) + 106 sizeof(endpoint_descriptor), 108 107 .interface_count = 1, 109 108 .configuration_number = HUB_CONFIGURATION_ID, … … 133 132 .descriptor = &std_configuration_descriptor, 134 133 .extra = extra_descriptors, 135 .extra_count = sizeof(extra_descriptors) /sizeof(extra_descriptors[0])134 .extra_count = sizeof(extra_descriptors) / sizeof(extra_descriptors[0]) 136 135 }; 137 136 … … 148 147 * @return Error code. 149 148 */ 150 errno_t virthub_init(usbvirt_device_t *dev, const char *name)149 errno_t virthub_init(usbvirt_device_t *dev, const char *name) 151 150 { 152 151 if (dev == NULL) { -
uspace/drv/bus/usb/vhc/hub/virthubops.c
r76d0981d r3bacee1 49 49 50 50 switch (new_state) { 51 case USBVIRT_STATE_CONFIGURED:52 hub_set_port_state_all(hub, HUB_PORT_STATE_POWERED_OFF);53 break;54 case USBVIRT_STATE_ADDRESS:55 hub_set_port_state_all(hub, HUB_PORT_STATE_NOT_CONFIGURED);56 break;57 default:58 break;51 case USBVIRT_STATE_CONFIGURED: 52 hub_set_port_state_all(hub, HUB_PORT_STATE_POWERED_OFF); 53 break; 54 case USBVIRT_STATE_ADDRESS: 55 hub_set_port_state_all(hub, HUB_PORT_STATE_NOT_CONFIGURED); 56 break; 57 default: 58 break; 59 59 } 60 60 … … 137 137 138 138 switch (feature) { 139 case USB2_HUB_FEATURE_PORT_ENABLE: 140 if ((port_state != HUB_PORT_STATE_NOT_CONFIGURED) 141 && (port_state != HUB_PORT_STATE_POWERED_OFF)) { 142 hub_set_port_state(hub, port, HUB_PORT_STATE_DISABLED); 143 } 139 case USB2_HUB_FEATURE_PORT_ENABLE: 140 if ((port_state != HUB_PORT_STATE_NOT_CONFIGURED) && 141 (port_state != HUB_PORT_STATE_POWERED_OFF)) { 142 hub_set_port_state(hub, port, HUB_PORT_STATE_DISABLED); 143 } 144 rc = EOK; 145 break; 146 147 case USB2_HUB_FEATURE_PORT_SUSPEND: 148 if (port_state != HUB_PORT_STATE_SUSPENDED) { 144 149 rc = EOK; 145 150 break; 146 147 case USB2_HUB_FEATURE_PORT_SUSPEND: 148 if (port_state != HUB_PORT_STATE_SUSPENDED) { 149 rc = EOK; 150 break; 151 } 152 hub_set_port_state(hub, port, HUB_PORT_STATE_RESUMING); 153 rc = EOK; 154 break; 155 156 case USB_HUB_FEATURE_PORT_POWER: 157 if (port_state != HUB_PORT_STATE_NOT_CONFIGURED) { 158 hub_set_port_state(hub, port, HUB_PORT_STATE_POWERED_OFF); 159 } 160 rc = EOK; 161 break; 162 163 case USB_HUB_FEATURE_C_PORT_CONNECTION: 164 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_CONNECTION); 165 rc = EOK; 166 break; 167 168 case USB2_HUB_FEATURE_C_PORT_ENABLE: 169 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_ENABLE); 170 rc = EOK; 171 break; 172 173 case USB2_HUB_FEATURE_C_PORT_SUSPEND: 174 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_SUSPEND); 175 rc = EOK; 176 break; 177 178 case USB_HUB_FEATURE_C_PORT_OVER_CURRENT: 179 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_OVER_CURRENT); 180 rc = EOK; 181 break; 182 183 case USB_HUB_FEATURE_C_PORT_RESET: 184 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_RESET); 185 rc = EOK; 186 break; 187 188 default: 189 rc = ENOTSUP; 190 break; 151 } 152 hub_set_port_state(hub, port, HUB_PORT_STATE_RESUMING); 153 rc = EOK; 154 break; 155 156 case USB_HUB_FEATURE_PORT_POWER: 157 if (port_state != HUB_PORT_STATE_NOT_CONFIGURED) { 158 hub_set_port_state(hub, port, HUB_PORT_STATE_POWERED_OFF); 159 } 160 rc = EOK; 161 break; 162 163 case USB_HUB_FEATURE_C_PORT_CONNECTION: 164 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_CONNECTION); 165 rc = EOK; 166 break; 167 168 case USB2_HUB_FEATURE_C_PORT_ENABLE: 169 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_ENABLE); 170 rc = EOK; 171 break; 172 173 case USB2_HUB_FEATURE_C_PORT_SUSPEND: 174 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_SUSPEND); 175 rc = EOK; 176 break; 177 178 case USB_HUB_FEATURE_C_PORT_OVER_CURRENT: 179 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_OVER_CURRENT); 180 rc = EOK; 181 break; 182 183 case USB_HUB_FEATURE_C_PORT_RESET: 184 hub_clear_port_status_change(hub, port, HUB_STATUS_C_PORT_RESET); 185 rc = EOK; 186 break; 187 188 default: 189 rc = ENOTSUP; 190 break; 191 191 } 192 192 … … 310 310 311 311 switch (feature) { 312 case USB_HUB_FEATURE_PORT_RESET:313 if (port_state != HUB_PORT_STATE_POWERED_OFF) {314 hub_set_port_state(hub, port, HUB_PORT_STATE_RESETTING);315 }316 rc = EOK;317 break;318 319 case USB2_HUB_FEATURE_PORT_SUSPEND:320 if (port_state == HUB_PORT_STATE_ENABLED) {321 hub_set_port_state(hub, port, HUB_PORT_STATE_SUSPENDED);322 }323 rc = EOK;324 break;325 326 case USB_HUB_FEATURE_PORT_POWER:327 if (port_state == HUB_PORT_STATE_POWERED_OFF) {328 hub_set_port_state(hub, port, HUB_PORT_STATE_DISCONNECTED);329 }330 rc = EOK;331 break;332 333 default:334 break;312 case USB_HUB_FEATURE_PORT_RESET: 313 if (port_state != HUB_PORT_STATE_POWERED_OFF) { 314 hub_set_port_state(hub, port, HUB_PORT_STATE_RESETTING); 315 } 316 rc = EOK; 317 break; 318 319 case USB2_HUB_FEATURE_PORT_SUSPEND: 320 if (port_state == HUB_PORT_STATE_ENABLED) { 321 hub_set_port_state(hub, port, HUB_PORT_STATE_SUSPENDED); 322 } 323 rc = EOK; 324 break; 325 326 case USB_HUB_FEATURE_PORT_POWER: 327 if (port_state == HUB_PORT_STATE_POWERED_OFF) { 328 hub_set_port_state(hub, port, HUB_PORT_STATE_DISCONNECTED); 329 } 330 rc = EOK; 331 break; 332 333 default: 334 break; 335 335 } 336 336
Note:
See TracChangeset
for help on using the changeset viewer.
