Changes in uspace/drv/ohci/hc.c [aa9ccf7:c6fe469] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/ohci/hc.c
raa9ccf7 rc6fe469 113 113 ret, str_error(ret)); 114 114 hc_init_hw(instance); 115 fibril_mutex_initialize(&instance->guard);116 115 117 116 rh_init(&instance->rh, dev, instance->registers); … … 136 135 } 137 136 138 fibril_mutex_lock(&instance->guard);139 137 switch (batch->transfer_type) { 140 138 case USB_TRANSFER_CONTROL: … … 159 157 case USB_TRANSFER_INTERRUPT: 160 158 case USB_TRANSFER_ISOCHRONOUS: 161 instance->registers->control &= (~C_PLE & ~C_IE);159 instance->registers->control &= ~C_PLE; 162 160 transfer_list_add_batch( 163 161 instance->transfers[batch->transfer_type], batch); 164 instance->registers->control |= C_PLE | C_IE; 165 usb_log_debug2("Added periodic transfer: %x.\n", 166 instance->registers->periodic_current); 162 instance->registers->control |= C_PLE; 167 163 break; 168 164 default: 169 165 break; 170 166 } 171 fibril_mutex_unlock(&instance->guard);172 167 return EOK; 173 168 } … … 183 178 usb_log_debug("OHCI interrupt: %x.\n", status); 184 179 180 185 181 if (status & IS_WDH) { 186 fibril_mutex_lock(&instance->guard);187 usb_log_debug2("HCCA: %p-%p(%p).\n", instance->hcca,188 instance->registers->hcca, addr_to_phys(instance->hcca));189 usb_log_debug2("Periodic current: %p.\n",190 instance->registers->periodic_current);191 182 LIST_INITIALIZE(done); 192 183 transfer_list_remove_finished( … … 206 197 usb_transfer_batch_finish(batch); 207 198 } 208 fibril_mutex_unlock(&instance->guard);209 199 } 210 200 } … … 218 208 instance->registers->interrupt_status = status; 219 209 hc_interrupt(instance, status); 220 async_usleep( 50000);210 async_usleep(10000); 221 211 } 222 212 return EOK; … … 355 345 SETUP_TRANSFER_LIST(transfers_control, "CONTROL"); 356 346 SETUP_TRANSFER_LIST(transfers_bulk, "BULK"); 357 #undef SETUP_TRANSFER_LIST 347 358 348 transfer_list_set_next(&instance->transfers_interrupt, 359 349 &instance->transfers_isochronous); … … 370 360 371 361 return EOK; 362 #undef CHECK_RET_CLEAR_RETURN 372 363 } 373 364 /*----------------------------------------------------------------------------*/
Note:
See TracChangeset
for help on using the changeset viewer.