1## @file 2# The EhciDxe driver is responsible for managing the behavior of EHCI controller. 3# It implements the interfaces of monitoring the status of all ports and transferring 4# Control, Bulk, Interrupt and Isochronous requests to Usb2.0 device. 5# 6# Note that EhciDxe driver is enhanced to guarantee that the EHCI controller get attached 7# to the EHCI controller before the UHCI driver attaches to the companion UHCI controller. 8# This way avoids the control transfer on a shared port between EHCI and companion host 9# controller when UHCI gets attached earlier than EHCI and a USB 2.0 device inserts. 10# 11# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR> 12# 13# This program and the accompanying materials 14# are licensed and made available under the terms and conditions of the BSD License 15# which accompanies this distribution. The full text of the license may be found at 16# http://opensource.org/licenses/bsd-license.php 17# 18# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 19# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 20# 21# 22## 23 24[Defines] 25 INF_VERSION = 0x00010005 26 BASE_NAME = EhciDxe 27 MODULE_UNI_FILE = EhciDxe.uni 28 FILE_GUID = BDFE430E-8F2A-4db0-9991-6F856594777E 29 MODULE_TYPE = UEFI_DRIVER 30 VERSION_STRING = 1.0 31 32 ENTRY_POINT = EhcDriverEntryPoint 33 34# 35# The following information is for reference only and not required by the build tools. 36# 37# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64 38# 39# DRIVER_BINDING = gEhciDriverBinding 40# COMPONENT_NAME = gEhciComponentName 41# COMPONENT_NAME2 = gEhciComponentName2 42# 43 44[Sources] 45 UsbHcMem.h 46 EhciUrb.c 47 EhciReg.h 48 UsbHcMem.c 49 EhciSched.c 50 EhciDebug.c 51 EhciReg.c 52 EhciDebug.h 53 ComponentName.c 54 ComponentName.h 55 EhciUrb.h 56 Ehci.h 57 EhciSched.h 58 Ehci.c 59 60[Packages] 61 MdePkg/MdePkg.dec 62 MdeModulePkg/MdeModulePkg.dec 63 64[FeaturePcd] 65 gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport ## CONSUMES 66 67[LibraryClasses] 68 MemoryAllocationLib 69 BaseLib 70 UefiLib 71 UefiBootServicesTableLib 72 UefiDriverEntryPoint 73 BaseMemoryLib 74 DebugLib 75 PcdLib 76 ReportStatusCodeLib 77 78[Guids] 79 gEfiEventExitBootServicesGuid ## SOMETIMES_CONSUMES ## Event 80 81[Protocols] 82 gEfiPciIoProtocolGuid ## TO_START 83 gEfiUsb2HcProtocolGuid ## BY_START 84 85# [Event] 86# EVENT_TYPE_PERIODIC_TIMER ## CONSUMES 87# 88 89[UserExtensions.TianoCore."ExtraFiles"] 90 EhciDxeExtra.uni 91