hc.h File Reference

OHCI host controller driver structure. More...

#include <fibril.h>
#include <fibril_synch.h>
#include <adt/list.h>
#include <ddi.h>
#include <usb/usb.h>
#include <usb/host/device_keeper.h>
#include <usb/host/usb_endpoint_manager.h>
#include <usbhc_iface.h>
#include "batch.h"
#include "ohci_regs.h"
#include "root_hub.h"
#include "endpoint_list.h"
#include "hw_struct/hcca.h"

Go to the source code of this file.

Data Structures

struct  hc
 Main OHCI drier structure. More...

Defines

#define OHCI_NEEDED_IRQ_COMMANDS   5

Typedefs

typedef hc hc_t
 Main OHCI drier structure.

Functions

static hc_tfun_to_hc (ddf_fun_t *fun)
 Get and cast pointer to the driver data.
int hc_add_endpoint (hc_t *instance, usb_address_t address, usb_endpoint_t ep, usb_speed_t speed, usb_transfer_type_t type, usb_direction_t direction, size_t max_packet_size, size_t size, unsigned interval)
 Create end register endpoint structures.
static void hc_fini (hc_t *instance)
 Safely dispose host controller internal structures.
endpoint_thc_get_endpoint (hc_t *instance, usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction, size_t *bw)
 Get access to endpoint structures.
int hc_init (hc_t *instance, uintptr_t regs, size_t reg_size, bool interrupts)
 Initialize OHCI hc driver structure.
void hc_interrupt (hc_t *instance, uint32_t status)
 Interrupt handling routine.
int hc_register_hub (hc_t *instance, ddf_fun_t *hub_fun)
 Announce OHCI root hub to the DDF.
int hc_remove_endpoint (hc_t *instance, usb_address_t address, usb_endpoint_t endpoint, usb_direction_t direction)
 Dequeue and delete endpoint structures.
int hc_schedule (hc_t *instance, usb_transfer_batch_t *batch)
 Add USB transfer to the schedule.
void hc_start_hw (hc_t *instance)
 OHCI hw initialization routine.


Detailed Description

OHCI host controller driver structure.

Definition in file hc.h.


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