Chapter 5 Input/Output Interfaces

5.7.2 USB PROGRAMMING

Programming the USB interface consists of configuration, which typically occurs during POST, and control, which occurs at runtime.

5.7.2.1 USB Configuration

The USB interface operates as a PCI device (31) within the 82801 ICH2 component (functions 2 and 4) and is configured using PCI Configuration Registers as listed in Table 5-17.

Table 5–17. USB Interface Configuration Registers

Table 5-17.

USB Interface Configuration Registers

PCI

 

 

PCI

 

 

Config.

 

Reset

Config.

 

Reset

Addr.

Register

Value

Addr.

Register

Value

00, 01h

Vender ID

8086h

0Eh

Header Type

00h

02, 03h

Device ID

2442h or 2444h

20-23h

I/O Space Base Address

1

04, 05h

PCI Command

0000h

2C, 2Dh

Sub. Vender ID

00h

06, 07h

PCI Status

0280h

3Ch

Interrupt Line

00h

08h

Revision ID

00h

3Dh

Interrupt Pin

03h

09h

Programming I/F

00h

60h

Serial Bus Release No.

10h

0Ah

Sub Class Code

03h

C0, C1h

USB Leg. Kybd./Ms. Cntrl.

2000h

0Bh

Base Class Code

0Ch

C4h

USB Resume Enable

00h

5.7.2.2 USB Control

The USB is controlled through I/O registers as listed in table 5-18.

Table 5–18. USB Control Registers

Table 5-18.

USB Control Registers

I/O Addr.

Register

Default Value

00, 01h

Command

0000h

02, 03h

Status

0000h

04, 05h

Interupt Enable

0000h

06, 07

Frame Number

0000h

08, 0B

Frame List Base Address

0000h

0Ch

Start of Frame Modify

40h

10, 11h

Port 1 Status/Control

0080h

12, 13h

Port 2 Status/Control

0080h

18h

Test Data

00h

5-24Compaq Deskpro EXS and Workstation 300 Personal Computers

Featuring the Intel Pentium 4 Processor

First Edition – December 2000

Page 118
Image 118
Compaq 850 manual USB Programming, USB Configuration, USB Interface Configuration Registers, USB Control Registers