3 list management, 4 root hub, 3 list management -7 11.2.3.4 root hub -7 – Cirrus Logic EP93xx User Manual

Page 447: Table 11-1. frame bandwidth allocation -7

Advertising
background image

DS785UM1

11-7

Copyright 2007 Cirrus Logic

Universal Serial Bus Host Controller

EP93xx User’s Guide

1

1

1

1

11

A portion of the bandwidth is reserved for nonperiodic transfers. This ensures that some
amount of bulk and control transfers will occur in each frame period. The frame period is
defined for USB to be 1.0 ms.

The bandwidth allocation policy for OpenHCI is shown in

Table 11-1

. Each frame begins with

the Host Controller sending the Start of Frame (SOF) synchronization packet to the USB bus.
This is followed by the Host Controller servicing nonperiodic transfers until the frame interval
counter reaches the value set by the Host Controller Driver, indicating that the Host Controller
should begin servicing periodic transfers. After the periodic transfers complete, any
remaining time in the frame is consumed by servicing nonperiodic transfers once more.

11.2.3.3 List Management

The transport mechanism for USB data packets is via Transfer Descriptor queues linked to
Endpoint Descriptor lists. The Host Controller Driver creates these data structures then
passes control to the Host Controller for processing.

The Host Controller Driver is responsible for enqueuing and dequeuing Endpoint Descriptors.
Enqueuing is done by adding the Endpoint Descriptor to the tail of the appropriate list. This
may occur simultaneously with the Host Controller processing the list without requiring any
lock mechanism. Before dequeuing an Endpoint Descriptor, the Host Controller Driver may
disable the Host Controller from processing the entire Endpoint Descriptor list of the data type
being removed to ensure that the Host Controller is not accessing the Endpoint Descriptor.

The Host Controller Driver is also responsible for enqueuing Transfer Descriptors to the
appropriate Endpoint Descriptor. Enqueuing is done by adding the Transfer Descriptor to the
tail of the appropriate queue. This may occur simultaneously to the Host Controller
processing the queue without requiring any lock mechanism. Under normal operation, the
Host Controller dequeues the Transfer Descriptor. However, the Host Controller Driver
dequeues the Transfer Descriptor when the Transfer Descriptor is being canceled due to a
request from the client software or certain error conditions. In this instance, the Endpoint
Descriptor is disabled prior to the Transfer Descriptor being dequeued.

11.2.3.4 Root Hub

The Root Hub is integrated into the HC. The internal registers of the Root Hub are exposed to
the Host Controller Driver which is responsible for providing the proper hub-class protocol
with the USB Driver and proper control of the Root Hub.

Table 11-1. Frame Bandwidth Allocation

1 msec.

SOF

NP

Periodic

NP

Time

J

Advertising