Upload
michelle-exley
View
218
Download
1
Embed Size (px)
Citation preview
October 11, 2000 2
BIOS Considerationsfor USB 2.0
BIOS Considerationsfor USB 2.0
Kangkang ShenKangkang ShenPhoenix Technologies Ltd.Phoenix Technologies Ltd.
October 11, 2000 3
AgendaAgenda
BIOS CandidatesBIOS Candidates USB BIOS support for Keyboard and MouseUSB BIOS support for Keyboard and Mouse Booting from USBBooting from USB BIOS support for USB 2.0BIOS support for USB 2.0
October 11, 2000 4
BIOS CandidatesBIOS Candidates
USB Keyboard supportUSB Keyboard support– Basic need of all environmentsBasic need of all environments
USB Mouse supportUSB Mouse support– For GUI and DOS game environmentsFor GUI and DOS game environments
USB Floppy, HardDisk, CD ROM supportUSB Floppy, HardDisk, CD ROM support– Potential future candidates - INT13H InterfacePotential future candidates - INT13H Interface
October 11, 2000 5
USB BIOS Requirementsfor Keyboard and MiceUSB BIOS Requirementsfor Keyboard and Mice
Design for Desktops, Portables andDesign for Desktops, Portables andServer SystemsServer Systems
Support for Multiple Host ControllersSupport for Multiple Host Controllers Enumeration should handle all legalEnumeration should handle all legal
Bus topologiesBus topologies USB Devices must coexist with PS/2 DevicesUSB Devices must coexist with PS/2 Devices Must support multiple USB Keyboards &Must support multiple USB Keyboards &
USB MiceUSB Mice
October 11, 2000 6
USB BIOS Requirementsfor Keyboard and MiceUSB BIOS Requirementsfor Keyboard and Mice
Each USB Keyboard has its own Typematic RateEach USB Keyboard has its own Typematic Rate Hot Attach/Detach must be supportedHot Attach/Detach must be supported Must be able to transition to the USB Aware O/SMust be able to transition to the USB Aware O/S USB support performance must be usableUSB support performance must be usable
– Must not notice the difference between PS/2 & USBMust not notice the difference between PS/2 & USB USB must not degrade System performanceUSB must not degrade System performance
– When USB Devices are idleWhen USB Devices are idle– When “PS/2 Devices only” mode is selectedWhen “PS/2 Devices only” mode is selected
October 11, 2000 7
Device Emulation OverviewDevice Emulation Overview
Both the PS/2 Mouse & PS/2 Keyboard are Both the PS/2 Mouse & PS/2 Keyboard are emulated along with the Keyboard Controlleremulated along with the Keyboard Controller
An SMI is generated on accesses to the KBCAn SMI is generated on accesses to the KBC An SMI is generated by the Host Controller on a An SMI is generated by the Host Controller on a
“Transfer Completion” event“Transfer Completion” event USB Data is converted & sent to the SystemUSB Data is converted & sent to the System
– UHCI: Echoed through the Keyboard ControllerUHCI: Echoed through the Keyboard Controller– OHCI: Placed in the Legacy Registers.OHCI: Placed in the Legacy Registers.
October 11, 2000 8
Device Emulation OverviewDevice Emulation Overview
Block diagrams of UHCI & OHCI SMI TrappingBlock diagrams of UHCI & OHCI SMI Trapping– UHCI: KBC Status and IRQ’s come from the KBCUHCI: KBC Status and IRQ’s come from the KBC– OHCI: KBC Status and IRQ’s come from the Host OHCI: KBC Status and IRQ’s come from the Host
Controller’s Legacy hardwareController’s Legacy hardware
wr60wr64rd60rd64IRQ’s
wr60wr64rd60rd64IRQ’s
Universal HCI Open HCI
SMISMITrapTrap
KbcKbc SMISMITrapTraplatchlatch
October 11, 2000 9
USB BIOS & O/S SupportUSB BIOS & O/S Support
BIOS InitializationBIOS Initialization
USB InitializationUSB Initialization
BIOS surrendersBIOS surrendersto the O/Sto the O/S
BIOS legacyBIOS legacysupport stayssupport stays
intactintact
BIOS TransitionBIOS Transition
USB AwareUSB AwareOperating SystemOperating System
Non-USB AwareNon-USB AwareOperating SystemOperating System
BIOS
OSOS
October 11, 2000 10
PS/2-Only ArchitecturePS/2-Only Architecture
BIOS
OSOS
BIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse Services
Application / Operation System LayerApplication / Operation System Layer
PS/2 Keyboard & MousePS/2 Keyboard & Mouse
Keyboard ControllerKeyboard Controllerrd P60h, wr P60h, rd P64h & wr P64hrd P60h, wr P60h, rd P64h & wr P64h
October 11, 2000 11
BIOS: USB & PS/2 ArchitectureBIOS: USB & PS/2 Architecture
BIOS
BIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse Services
Application / Operation System Layer
USB Keyboard(Hub) & MouseUSB Keyboard(Hub) & Mouse
Keyboard ControllerKeyboard Controllerrd P60h, wr P60h, rd P64h & wr P64hrd P60h, wr P60h, rd P64h & wr P64h Rd P64h (Status)
Keyboard Controller
PS/2 Keyboard & MousePS/2 Keyboard & Mouse
Keyboard EmulationKeyboard EmulationKeyboard EmulationKeyboard Emulation Mouse EmulationMouse EmulationMouse EmulationMouse EmulationPCI EnumerationPCI Enumeration
InitializationInitialization
Host Controller ServicesHost Controller ServicesUSB ServicesUSB Services
Universal HCIUniversal HCI
UHCI Block UHCI Block DiagramDiagram
UHCI Block UHCI Block DiagramDiagram
October 11, 2000 12
BIOS: USB & PS/2 ArchitectureBIOS: USB & PS/2 Architecture
BIOS
BIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse ServicesBIOS Keyboard/Mouse Services
Application / Operation System Layer
USB Keyboard(Hub) & MouseUSB Keyboard(Hub) & Mouse
Keyboard Controller EmulationKeyboard Controller EmulationRead & Write P60h/P64h EmulationRead & Write P60h/P64h Emulation
Keyboard Controller
PS/2 Keyboard & MousePS/2 Keyboard & Mouse
Keyboard EmulationKeyboard EmulationKeyboard EmulationKeyboard Emulation Mouse EmulationMouse EmulationMouse EmulationMouse EmulationPCI EnumerationPCI Enumeration
InitializationInitialization
Host Controller ServicesHost Controller ServicesUSB ServicesUSB Services
Open HCIOpen HCI
OHCI Block OHCI Block DiagramDiagram
OHCI Block OHCI Block DiagramDiagram
OHCI Legacy Registers
October 11, 2000 13
SMI PerformanceSMI Performance
10 SMI’s per Keystoke (5 Make + 5 Break)10 SMI’s per Keystoke (5 Make + 5 Break)– USB Device Transfer Completion (hcTransfer)USB Device Transfer Completion (hcTransfer)– INT09h’s Disable of the Keyboard Interface (ADh)INT09h’s Disable of the Keyboard Interface (ADh)– INT09h’s Read of Port 60hINT09h’s Read of Port 60h– INT09h’s Re-Enable of the Keyboard Interface (AEh)INT09h’s Re-Enable of the Keyboard Interface (AEh)– Persistence Callback (UHCI only)Persistence Callback (UHCI only)
On OHCI the Rd P60h & the Persistence are the same SMIOn OHCI the Rd P60h & the Persistence are the same SMI
Arrow Keys w/NumLk 34 SMI’s per KeystrokeArrow Keys w/NumLk 34 SMI’s per Keystroke
October 11, 2000 14
Legacy-Free KeyboardLegacy-Free Keyboard
Keyboard and Mouse still available during POSTKeyboard and Mouse still available during POST INT15H (C2H), INT16H CompatibleINT15H (C2H), INT16H Compatible Legacy-Free Keyboard Feature set same as currentLegacy-Free Keyboard Feature set same as current Keyboard Controller hardware issues finally addressedKeyboard Controller hardware issues finally addressed GateA20 Confusion and Problems are eliminatedGateA20 Confusion and Problems are eliminated USB SMI Emulation is no longer requiredUSB SMI Emulation is no longer required
– USB uses a standard IRQ insteadUSB uses a standard IRQ instead– New OS hand-off required for IRQ keyboard emulationNew OS hand-off required for IRQ keyboard emulation
IRQ1 and IRQ12 are releasedIRQ1 and IRQ12 are released Keyboard Module simplifiedKeyboard Module simplified
October 11, 2000 15
Current DesktopCurrent Desktop
Desktop & Server Block DiagramDesktop & Server Block DiagramDesktop & Server Block DiagramDesktop & Server Block Diagram
USB KeyboardPS/2 Keyboard
KeyboardKeyboardControllerController
IRQ1IRQ12
ISA
SMI
PCI
USB
Desktop
USB HostUSB HostControllerController
October 11, 2000 16
Legacy-Free DesktopLegacy-Free Desktop
Desktop & Server Block DiagramDesktop & Server Block DiagramDesktop & Server Block DiagramDesktop & Server Block Diagram
USB Keyboard
EOT(PCI IRQ)
PCI
USB
Desktop
USB HostUSB HostControllerController
October 11, 2000 17
Replacing the FloppyReplacing the Floppy
Host HubHub
DeviceDevice
DeviceDevice
DeviceDevice
DeviceDevice
DeviceDevice
October 11, 2000 18
What Constitutes A Mass Storage Device?What Constitutes A Mass Storage Device?
Any SCSI deviceAny SCSI device Any ATAPI deviceAny ATAPI device Two transport mechanismsTwo transport mechanisms
– Control-Bulk-Interrupt (CBI)Control-Bulk-Interrupt (CBI)– Bulk-Only Transport (BOT)Bulk-Only Transport (BOT)– Can be found at WWW.USB.ORGCan be found at WWW.USB.ORG
October 11, 2000 19
Why Serial NumberWhy Serial Number
Allows for a change in topologyAllows for a change in topology– The user can hot-plug USB devicesThe user can hot-plug USB devices– This causes a bus re-enumerationThis causes a bus re-enumeration– USB physical addresses can changeUSB physical addresses can change– Serial number keeps A: on the expected device during Serial number keeps A: on the expected device during
a hot-pluga hot-plug Allows for interchange of devicesAllows for interchange of devices
– When devices are re-inserted they can maintain their When devices are re-inserted they can maintain their original drive lettersoriginal drive letters
October 11, 2000 20
Requesting Serial NumberRequesting Serial Number
Serial Number is required for devices that follow Serial Number is required for devices that follow the BOT specificationthe BOT specification
Serial Number is optional for devices that follow Serial Number is optional for devices that follow the CBI specificationthe CBI specification– Mainly USB 1.44MB floppy drivesMainly USB 1.44MB floppy drives
Require Serial Number SupportRequire Serial Number Supportfor Your USB Floppy Drivefor Your USB Floppy Drive
Require Serial Number SupportRequire Serial Number Supportfor Your USB Floppy Drivefor Your USB Floppy Drive
October 11, 2000 21
Appropriate DevicesAppropriate Devices
Devices with minor speed considerationsDevices with minor speed considerations– Large FloppyLarge Floppy– Slow TapeSlow Tape– Any Mass Storage device which is interfaced via Any Mass Storage device which is interfaced via
parallel port, todayparallel port, today USB 2.0 will bring many new devices to USBUSB 2.0 will bring many new devices to USB
– Hard Drives, CD-ROM drives, etc.Hard Drives, CD-ROM drives, etc.
October 11, 2000 22
Special Use DevicesSpecial Use Devices
Laptops are driving these devicesLaptops are driving these devices IA ProductsIA Products USB 2.0 changes these from special use USB 2.0 changes these from special use
devices to normal use devices for Laptops, devices to normal use devices for Laptops, Desktops, Workstations, & ServersDesktops, Workstations, & Servers
October 11, 2000 23
USB Boot In ConclusionUSB Boot In Conclusion
Phoenix is currently offering support forPhoenix is currently offering support for– FloppyFloppy– ZipZip– Hard DriveHard Drive– CD-ROMCD-ROM
In processIn process– Hard drive for USB 2.0Hard drive for USB 2.0
Devices to follow as neededDevices to follow as needed
October 11, 2000 24
Support USB 2.0 HostSupport USB 2.0 Host
USB 2.0USB 2.0Host ChipHost ChipUSB 2.0USB 2.0Host ChipHost Chip RouterRouterRouterRouter
USB 1.1USB 1.1HostHost
USB 1.1USB 1.1HostHost
USB 1.1 USB 1.1 SignalsSignalsUSB 1.1 USB 1.1 SignalsSignals
USB 2.0USB 2.0HostHost
USB 2.0USB 2.0HostHost
USB 2.0 USB 2.0 SignalsSignalsUSB 2.0 USB 2.0 SignalsSignals
USB 1.1 USB 1.1 SignalsSignals
USB 2.0 USB 2.0 SignalsSignals
October 11, 2000 25
BIOS Support forHybrid ControllerBIOS Support forHybrid Controller
BIOS Can Support HS/FS device at FSBIOS Can Support HS/FS device at FS– Using Classic portionUsing Classic portion– No new code requiredNo new code required– Performance degradedPerformance degraded
BIOS Can Support FS/LS device at FS/LSBIOS Can Support FS/LS device at FS/LS– Using Classic portionUsing Classic portion– No new code requiredNo new code required
October 11, 2000 26
BIOS Support forHS ControllerBIOS Support forHS Controller
New code to support New code to support – HS devicesHS devices– FS/LS devices using split transactionFS/LS devices using split transaction
October 11, 2000 27
SummarySummary
USB keyboard legacy emulation should be USB keyboard legacy emulation should be shipped on all systems with USB and KBCshipped on all systems with USB and KBC
USB mass storage is now available as a USB mass storage is now available as a secondary boot devicesecondary boot device
Require serial numbers in your massRequire serial numbers in your massstorage devicesstorage devices
Send us some prototype USB 2.0 massSend us some prototype USB 2.0 massstorage devicesstorage devices
October 11, 2000 28
For More InformationFor More Information
WWW.USB.ORGWWW.USB.ORG WWW.PHOENIX.COMWWW.PHOENIX.COM For questions related to Phoenix BIOSesFor questions related to Phoenix BIOSes
– E-Mail E-Mail [email protected][email protected] – E-Mail E-Mail [email protected][email protected]