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
Each USB controller functions as a PCI device within the 82801 component and is configured
using PCI Configuration Registers as listed in Table 5-20.
Table 5-20. USB Interface Configuration Registers
Table 5-20.
USB Interface Configuration Registers
PCI
Config.
Addr.
Register
Reset
Value
PCI
Config.
Addr.
Register
Reset
Value
00, 01h
Vender ID
8086h
0Eh
Header Type
00h
02, 03h
Device ID
[1]
20-23h
I/O Space Base Address
1d
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
NOTE:
[1] USB 1.1 #1= 24D2h
USB 1.1 #2 = 24D4h
USB 1.1 #3 = 24D7h
USB 2.0 = 24DDh
5.7.2.2 USB
Control
The USB is controlled through I/O registers as listed in table 5-21.
Table 5-21. USB Control Registers
Table 5-21.
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-26
hp compaq d330 and d530 Series of Personal Computers
Featuring the Intel Pentium 4 Processor
First Edition – June 2003