Title: BIOS Considerations for USB 2.0
1(No Transcript)
2BIOS Considerationsfor USB 2.0
- Kangkang Shen
- Phoenix Technologies Ltd.
3Agenda
- BIOS Candidates
- USB BIOS support for Keyboard and Mouse
- Booting from USB
- BIOS support for USB 2.0
4BIOS Candidates
- USB Keyboard support
- Basic need of all environments
- USB Mouse support
- For GUI and DOS game environments
- USB Floppy, HardDisk, CD ROM support
- Potential future candidates - INT13H Interface
5USB BIOS Requirementsfor Keyboard and Mice
- Design for Desktops, Portables andServer Systems
- Support for Multiple Host Controllers
- Enumeration should handle all legalBus
topologies - USB Devices must coexist with PS/2 Devices
- Must support multiple USB Keyboards USB Mice
6USB BIOS Requirementsfor Keyboard and Mice
- Each USB Keyboard has its own Typematic Rate
- Hot Attach/Detach must be supported
- Must be able to transition to the USB Aware O/S
- USB support performance must be usable
- Must not notice the difference between PS/2 USB
- USB must not degrade System performance
- When USB Devices are idle
- When PS/2 Devices only mode is selected
7Device Emulation Overview
- Both the PS/2 Mouse PS/2 Keyboard are emulated
along with the Keyboard Controller - An SMI is generated on accesses to the KBC
- An SMI is generated by the Host Controller on a
Transfer Completion event - USB Data is converted sent to the System
- UHCI Echoed through the Keyboard Controller
- OHCI Placed in the Legacy Registers.
8Device Emulation Overview
- Block diagrams of UHCI OHCI SMI Trapping
- UHCI KBC Status and IRQs come from the KBC
- OHCI KBC Status and IRQs come from the Host
Controllers Legacy hardware
9USB BIOS O/S Support
USB Aware Operating System
BIOS surrenders to the O/S
BIOS Initialization
BIOS Transition
USB Initialization
Non-USB Aware Operating System
BIOS legacy support stays intact
10PS/2-Only Architecture
11BIOS USB PS/2 Architecture
Application / Operation System Layer
BIOS Keyboard/Mouse Services
BIOS
rd P60h, wr P60h, rd P64h wr P64h
Keyboard Controller
Initialization
Keyboard Emulation
Mouse Emulation
PCI Enumeration
USB Services
Host Controller Services
Universal HCI
UHCI Block Diagram
12BIOS USB PS/2 Architecture
Application / Operation System Layer
BIOS Keyboard/Mouse Services
BIOS
Read Write P60h/P64h Emulation
Keyboard Controller
Keyboard Controller Emulation
Initialization
Keyboard Emulation
Mouse Emulation
PCI Enumeration
Host Controller Services
USB Services
Open HCI
OHCI Block Diagram
13SMI Performance
- 10 SMIs per Keystoke (5 Make 5 Break)
- USB Device Transfer Completion (hcTransfer)
- INT09hs Disable of the Keyboard Interface (ADh)
- INT09hs Read of Port 60h
- INT09hs Re-Enable of the Keyboard Interface
(AEh) - Persistence Callback (UHCI only)
- On OHCI the Rd P60h the Persistence are the
same SMI - Arrow Keys w/NumLk 34 SMIs per Keystroke
14Legacy-Free Keyboard
- Keyboard and Mouse still available during POST
- INT15H (C2H), INT16H Compatible
- Legacy-Free Keyboard Feature set same as current
- Keyboard Controller hardware issues finally
addressed - GateA20 Confusion and Problems are eliminated
- USB SMI Emulation is no longer required
- USB uses a standard IRQ instead
- New OS hand-off required for IRQ keyboard
emulation - IRQ1 and IRQ12 are released
- Keyboard Module simplified
15Current Desktop
16Legacy-Free Desktop
17Replacing the Floppy
Booting From USB
18What Constitutes A Mass Storage Device?
- Any SCSI device
- Any ATAPI device
- Two transport mechanisms
- Control-Bulk-Interrupt (CBI)
- Bulk-Only Transport (BOT)
- Can be found at WWW.USB.ORG
19Why Serial Number
- Allows for a change in topology
- The user can hot-plug USB devices
- This causes a bus re-enumeration
- USB physical addresses can change
- Serial number keeps A on the expected device
during a hot-plug - Allows for interchange of devices
- When devices are re-inserted they can maintain
their original drive letters
20Requesting Serial Number
- Serial Number is required for devices that follow
the BOT specification - Serial Number is optional for devices that follow
the CBI specification - Mainly USB 1.44MB floppy drives
Require Serial Number Supportfor Your USB Floppy
Drive
21Appropriate Devices
- Devices with minor speed considerations
- Large Floppy
- Slow Tape
- Any Mass Storage device which is interfaced via
parallel port, today - USB 2.0 will bring many new devices to USB
- Hard Drives, CD-ROM drives, etc.
22Special Use Devices
- Laptops are driving these devices
- IA Products
- USB 2.0 changes these from special use devices to
normal use devices for Laptops, Desktops,
Workstations, Servers
23USB Boot In Conclusion
- Phoenix is currently offering support for
- Floppy
- Zip
- Hard Drive
- CD-ROM
- In process
- Hard drive for USB 2.0
- Devices to follow as needed
24Support USB 2.0 Host
USB 1.1 Signals
USB 2.0 Signals
USB 2.0Host Chip
Router
USB 1.1Host
USB 2.0Host
25BIOS Support forHybrid Controller
- BIOS Can Support HS/FS device at FS
- Using Classic portion
- No new code required
- Performance degraded
- BIOS Can Support FS/LS device at FS/LS
- Using Classic portion
- No new code required
26BIOS Support forHS Controller
- New code to support
- HS devices
- FS/LS devices using split transaction
27Summary
- USB keyboard legacy emulation should be shipped
on all systems with USB and KBC - USB mass storage is now available as a secondary
boot device - Require serial numbers in your massstorage
devices - Send us some prototype USB 2.0 massstorage
devices
28For More Information
- WWW.USB.ORG
- WWW.PHOENIX.COM
- For questions related to Phoenix BIOSes
- E-Mail Robert_Mendez_at_Phoenix.com
- E-Mail Kangkang_Shen_at_Phoenix.com