beautypg.com

Intel Extensible Firmware Interface User Manual

Page 14

background image

Extensible Firmware Interface Specification

xiv 12/01/02

Version

1.10

14 Protocols — USB Support

14.1

USB Host Controller Protocol............................................................................ 14-1

14.1.1

USB Host Controller Protocol Overview ................................................... 14-1

EFI_USB_HC_PROTOCOL ........................................................................... 14-2

EFI_USB_HC_PROTOCOL.Reset() ............................................................ 14-4

EFI_USB_HC_PROTOCOL.GetState() ....................................................... 14-6

EFI_USB_HC_PROTOCOL.SetState()........................................................ 14-8

EFI_USB_HC_PROTOCOL.ControlTransfer()........................................... 14-10

EFI_USB_HC_PROTOCOL.BulkTransfer() ............................................... 14-13

EFI_USB_HC_PROTOCOL.AsyncInterruptTransfer() ............................... 14-16

EFI_USB_HC_PROTOCOL.SyncInterruptTransfer() ................................. 14-19

EFI_USB_HC_PROTOCOL.IsochronousTransfer() ................................... 14-21

EFI_USB_HC_PROTOCOL.AsyncIsochronousTransfer() ......................... 14-23

EFI_USB_HC_PROTOCOL.GetRootHubPortNumber()............................. 14-25

EFI_USB_HC_PROTOCOL.GetRootHubPortStatus() ............................... 14-26

EFI_USB_HC_PROTOCOL.SetRootHubPortFeature().............................. 14-30

EFI_USB_HC_PROTOCOL.ClearRootHubPortFeature() .......................... 14-32

14.2

USB Driver Model ........................................................................................... 14-34

14.2.1

Scope..................................................................................................... 14-34

14.2.2

USB Driver Model Overview ................................................................... 14-34

14.2.3

USB Bus Driver ...................................................................................... 14-35

14.2.3.1

USB Bus Driver Entry Point ......................................................... 14-35

14.2.3.2

Driver Binding Protocol for USB Bus Drivers ............................... 14-35

14.2.3.3

USB Hot-Plug Event .................................................................... 14-36

14.2.3.4

USB Bus Enumeration................................................................. 14-36

14.2.4

USB Device Driver ................................................................................. 14-37

14.2.4.1

USB Device Driver Entry Point .................................................... 14-37

14.2.4.2

Driver Binding Protocol for USB Device Drivers........................... 14-37

14.2.5

EFI USB I/O Protocol Overview.............................................................. 14-37

EFI_USB_IO Protocol .................................................................................. 14-38

EFI_USB_IO_PROTOCOL.UsbControlTransfer() ...................................... 14-40

EFI_USB_IO_PROTOCOL.UsbBulkTransfer()........................................... 14-43

EFI_USB_IO_PROTOCOL.UsbAsyncInterruptTransfer()........................... 14-45

EFI_USB_IO_PROTOCOL.UsbSyncInterruptTransfer() ............................ 14-48

EFI_USB_IO_PROTOCOL.UsbIsochronousTransfer() .............................. 14-50

EFI_USB_IO_PROTOCOL.UsbAsyncIsochronousTransfer()..................... 14-52

EFI_USB_IO_PROTOCOL.UsbGetDeviceDescriptor() .............................. 14-54

EFI_USB_IO_PROTOCOL.UsbGetConfigDescriptor()............................... 14-56

EFI_USB_IO_PROTOCOL.UsbGetInterfaceDescriptor() ........................... 14-57

EFI_USB_IO_PROTOCOL.UsbGetEndpointDescriptor()........................... 14-59

EFI_USB_IO_PROTOCOL.UsbGetStringDescriptor()................................ 14-61

EFI_USB_IO_PROTOCOL.UsbGetSupportedLanguages() ....................... 14-62

EFI_USB_IO_PROTOCOL.UsbPortReset()............................................... 14-63

14.2.6

USB Device Paths.................................................................................. 14-64

14.2.6.1

USB Device Path Node ............................................................... 14-64

14.2.6.2

USB Device Path Example .......................................................... 14-65