hc.c File Reference

UHCI Host controller driver routines. More...

#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.


Detailed Description

UHCI Host controller driver routines.

Definition in file hc.c.


Generated on Thu Jun 2 07:45:51 2011 for HelenOS/USB by  doxygen 1.4.7