Changeset 302a4b6 in mainline
- Timestamp:
- 2011-04-23T10:08:47Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 8986412
- Parents:
- af81980
- Location:
- uspace/drv/uhci-hcd
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/uhci-hcd/hc.c
raf81980 r302a4b6 44 44 #include "hc.h" 45 45 46 #define UHCI_S UPPORTED_INTERRUPTS \46 #define UHCI_STATUS_ALLOW_INTERRUPTS \ 47 47 (UHCI_INTR_CRC | UHCI_INTR_COMPLETE | UHCI_INTR_SHORT_PACKET) 48 48 49 49 50 static int hc_init_transfer_lists(hc_t *instance); … … 138 139 /* Enable all interrupts, but resume interrupt */ 139 140 pio_write_16(&instance->registers->usbintr, 140 UHCI_S UPPORTED_INTERRUPTS);141 UHCI_STATUS_ALLOW_INTERRUPTS); 141 142 } 142 143 … … 182 183 instance->interrupt_commands[1].cmd = CMD_BTEST; 183 184 instance->interrupt_commands[1].value = 184 UHCI_S UPPORTED_INTERRUPTS;185 UHCI_STATUS_ALLOW_INTERRUPTS | UHCI_STATUS_NM_INTERRUPTS; 185 186 instance->interrupt_commands[1].srcarg = 1; 186 187 instance->interrupt_commands[1].dstarg = 2; … … 215 216 216 217 /* Set all frames to point to the first queue head */ 217 const uint32_t queue = 218 LINK_POINTER_QH(addr_to_phys( 219 instance->transfers_interrupt.queue_head)); 218 const uint32_t queue = LINK_POINTER_QH( 219 addr_to_phys(instance->transfers_interrupt.queue_head)); 220 220 221 221 unsigned i = 0; … … 279 279 #ifdef FSBR 280 280 transfer_list_set_next(&instance->transfers_bulk_full, 281 281 &instance->transfers_control_full); 282 282 #endif 283 283 … … 332 332 { 333 333 assert(instance); 334 usb_log_info("Got interrupt: %x.\n", status); 334 335 /* Lower 2 bits are transaction error and transaction complete */ 335 336 if (status & (UHCI_STATUS_INTERRUPT | UHCI_STATUS_ERROR_INTERRUPT)) { … … 353 354 } 354 355 /* Resume interrupts are not supported */ 356 if (status & UHCI_STATUS_RESUME) { 357 usb_log_error("Resume interrupt!\n"); 358 } 355 359 356 360 /* Bits 4 and 5 indicate hc error */ -
uspace/drv/uhci-hcd/hc.h
raf81980 r302a4b6 69 69 #define UHCI_STATUS_ERROR_INTERRUPT (1 << 1) 70 70 #define UHCI_STATUS_INTERRUPT (1 << 0) 71 #define UHCI_STATUS_NM_INTERRUPTS \ 72 (UHCI_STATUS_PROCESS_ERROR | UHCI_STATUS_SYSTEM_ERROR) 71 73 72 74 /** Interrupt enabled registers */
Note:
See TracChangeset
for help on using the changeset viewer.