#include <errno.h>
#include <str_error.h>
#include <adt/list.h>
#include <libarch/ddi.h>
#include <usb/debug.h>
#include <usb/usb.h>
#include "hc.h"
Go to the source code of this file.
Defines | |
| #define | UHCI_INTR_ALLOW_INTERRUPTS (UHCI_INTR_CRC | UHCI_INTR_COMPLETE | UHCI_INTR_SHORT_PACKET) | 
| #define | UHCI_STATUS_USED_INTERRUPTS (UHCI_STATUS_INTERRUPT | UHCI_STATUS_ERROR_INTERRUPT) | 
Functions | |
| static int | hc_debug_checker (void *arg) | 
| Debug function, checks consistency of memory structures.   | |
| int | hc_init (hc_t *instance, void *regs, size_t reg_size, bool interrupts) | 
| Initialize UHCI hc driver structure.   | |
| static void | hc_init_hw (hc_t *instance) | 
| Initialize UHCI hc hw resources.   | |
| static int | hc_init_mem_structures (hc_t *instance) | 
| Initialize UHCI hc memory structures.   | |
| static int | hc_init_transfer_lists (hc_t *instance) | 
| Initialize UHCI hc transfer lists.   | |
| void | hc_interrupt (hc_t *instance, uint16_t status) | 
| Take action based on the interrupt cause.   | |
| static int | hc_interrupt_emulator (void *arg) | 
| Polling function, emulates interrupts.   | |
| int | hc_schedule (hc_t *instance, usb_transfer_batch_t *batch) | 
| Add USB transfer to the schedule.   | |
Definition in file hc.c.
 1.4.7