TianoCore EDK2 master
Loading...
Searching...
No Matches
Uhci.h File Reference

Go to the source code of this file.

Data Structures

struct  USB_CLASSC
 
struct  _USB_HC_DEV
 

Macros

#define UHC_1_MICROSECOND   1
 
#define UHC_1_MILLISECOND   (1000 * UHC_1_MICROSECOND)
 
#define UHC_1_SECOND   (1000 * UHC_1_MILLISECOND)
 
#define UHC_GENERIC_TIMEOUT   UHC_1_SECOND
 
#define UHC_FORCE_GLOBAL_RESUME_STALL   (20 * UHC_1_MILLISECOND)
 
#define UHC_ROOT_PORT_RESET_STALL   (50 * UHC_1_MILLISECOND)
 
#define UHC_ROOT_PORT_RECOVERY_STALL   (10 * UHC_1_MILLISECOND)
 
#define UHC_SYNC_POLL_INTERVAL   (1 * UHC_1_MILLISECOND)
 
#define UHC_ASYNC_POLL_INTERVAL   EFI_TIMER_PERIOD_MILLISECONDS(1)
 
#define UHCI_TPL   TPL_NOTIFY
 
#define USB_HC_DEV_SIGNATURE   SIGNATURE_32 ('u', 'h', 'c', 'i')
 
#define UHC_FROM_USB2_HC_PROTO(This)   CR(This, USB_HC_DEV, Usb2Hc, USB_HC_DEV_SIGNATURE)
 

Typedefs

typedef struct _USB_HC_DEV USB_HC_DEV
 

Functions

EFI_STATUS EFIAPI UhciDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI UhciDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI UhciDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE Controller, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 

Variables

EFI_DRIVER_BINDING_PROTOCOL gUhciDriverBinding
 
EFI_COMPONENT_NAME_PROTOCOL gUhciComponentName
 
EFI_COMPONENT_NAME2_PROTOCOL gUhciComponentName2
 

Detailed Description

The definition for UHCI driver model and HC protocol routines.

Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file Uhci.h.

Macro Definition Documentation

◆ UHC_1_MICROSECOND

#define UHC_1_MICROSECOND   1

Definition at line 46 of file Uhci.h.

◆ UHC_1_MILLISECOND

#define UHC_1_MILLISECOND   (1000 * UHC_1_MICROSECOND)

Definition at line 47 of file Uhci.h.

◆ UHC_1_SECOND

#define UHC_1_SECOND   (1000 * UHC_1_MILLISECOND)

Definition at line 48 of file Uhci.h.

◆ UHC_ASYNC_POLL_INTERVAL

#define UHC_ASYNC_POLL_INTERVAL   EFI_TIMER_PERIOD_MILLISECONDS(1)

Definition at line 74 of file Uhci.h.

◆ UHC_FORCE_GLOBAL_RESUME_STALL

#define UHC_FORCE_GLOBAL_RESUME_STALL   (20 * UHC_1_MILLISECOND)

Definition at line 59 of file Uhci.h.

◆ UHC_FROM_USB2_HC_PROTO

#define UHC_FROM_USB2_HC_PROTO (   This)    CR(This, USB_HC_DEV, Usb2Hc, USB_HC_DEV_SIGNATURE)

Definition at line 92 of file Uhci.h.

◆ UHC_GENERIC_TIMEOUT

#define UHC_GENERIC_TIMEOUT   UHC_1_SECOND

Definition at line 53 of file Uhci.h.

◆ UHC_ROOT_PORT_RECOVERY_STALL

#define UHC_ROOT_PORT_RECOVERY_STALL   (10 * UHC_1_MILLISECOND)

Definition at line 67 of file Uhci.h.

◆ UHC_ROOT_PORT_RESET_STALL

#define UHC_ROOT_PORT_RESET_STALL   (50 * UHC_1_MILLISECOND)

Definition at line 66 of file Uhci.h.

◆ UHC_SYNC_POLL_INTERVAL

#define UHC_SYNC_POLL_INTERVAL   (1 * UHC_1_MILLISECOND)

Definition at line 73 of file Uhci.h.

◆ UHCI_TPL

#define UHCI_TPL   TPL_NOTIFY

Definition at line 80 of file Uhci.h.

◆ USB_HC_DEV_SIGNATURE

#define USB_HC_DEV_SIGNATURE   SIGNATURE_32 ('u', 'h', 'c', 'i')

Definition at line 82 of file Uhci.h.

Typedef Documentation

◆ USB_HC_DEV

typedef struct _USB_HC_DEV USB_HC_DEV

Definition at line 33 of file Uhci.h.

Function Documentation

◆ UhciDriverBindingStart()

EFI_STATUS EFIAPI UhciDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  Controller,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Starting the Usb UHCI Driver.

Parameters
ThisProtocol instance pointer.
ControllerHandle of device to test.
RemainingDevicePathNot used.
Return values
EFI_SUCCESSThis driver supports this device.
EFI_UNSUPPORTEDThis driver does not support this device.
EFI_DEVICE_ERRORThis driver cannot be started due to device Error. EFI_OUT_OF_RESOURCES- Failed due to resource shortage.

Definition at line 1609 of file Uhci.c.

◆ UhciDriverBindingStop()

EFI_STATUS EFIAPI UhciDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  Controller,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Stop this driver on ControllerHandle. Support stopping any child handles created by this driver.

Parameters
ThisProtocol instance pointer.
ControllerHandle of device to stop driver on.
NumberOfChildrenNumber of Children in the ChildHandleBuffer.
ChildHandleBufferList of handles for the children we need to stop.
Returns
EFI_SUCCESS
others

Definition at line 1830 of file Uhci.c.

◆ UhciDriverBindingSupported()

EFI_STATUS EFIAPI UhciDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  Controller,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Test to see if this driver supports ControllerHandle. Any ControllerHandle that has UsbHcProtocol installed will be supported.

Parameters
ThisProtocol instance pointer.
ControllerHandle of device to test.
RemainingDevicePathNot used.
Returns
EFI_SUCCESS This driver supports this device.
EFI_UNSUPPORTED This driver does not support this device.

Definition at line 1346 of file Uhci.c.

Variable Documentation

◆ gUhciComponentName

EFI_COMPONENT_NAME_PROTOCOL gUhciComponentName
extern

Definition at line 15 of file ComponentName.c.

◆ gUhciComponentName2

EFI_COMPONENT_NAME2_PROTOCOL gUhciComponentName2
extern

Definition at line 24 of file ComponentName.c.

◆ gUhciDriverBinding

EFI_DRIVER_BINDING_PROTOCOL gUhciDriverBinding
extern

Definition at line 12 of file Uhci.c.