Changeset 3bacee1 in mainline for uspace/drv/bus/usb/vhc/hub/virthubops.c
- Timestamp:
- 2018-04-12T16:27:17Z (7 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)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/bus/usb/vhc/hub/virthubops.c
r76d0981d r3bacee1 49 49 50 50 switch (new_state) { 51 52 53 54 55 56 57 58 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 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 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.