-#/** @file\r
-# Component name for module Ehci\r
+## @file\r
+# The EhciDxe driver is responsible for managing the behavior of EHCI controller.\r
+# It implements the interfaces of monitoring the status of all ports and transferring\r
+# Control, Bulk, Interrupt and Isochronous requests to Usb2.0 device.\r
#\r
-# FIX ME!\r
-# Copyright (c) 2006, Intel Corporation. \r
+# Note that EhciDxe driver is enhanced to guarantee that the EHCI controller get attached\r
+# to the EHCI controller before the UHCI driver attaches to the companion UHCI controller.\r
+# This way avoids the control transfer on a shared port between EHCI and companion host\r
+# controller when UHCI gets attached earlier than EHCI and a USB 2.0 device inserts.\r
#\r
-# All rights reserved. This program and the accompanying materials\r
+# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+#\r
+# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
# which accompanies this distribution. The full text of the license may be found at\r
# http://opensource.org/licenses/bsd-license.php\r
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
#\r
#\r
-#**/\r
+##\r
\r
[Defines]\r
INF_VERSION = 0x00010005\r
BASE_NAME = EhciDxe\r
+ MODULE_UNI_FILE = EhciDxe.uni\r
FILE_GUID = BDFE430E-8F2A-4db0-9991-6F856594777E\r
MODULE_TYPE = UEFI_DRIVER\r
VERSION_STRING = 1.0\r
- EDK_RELEASE_VERSION = 0x00020000\r
- EFI_SPECIFICATION_VERSION = 0x00020000\r
\r
ENTRY_POINT = EhcDriverEntryPoint\r
\r
#\r
# The following information is for reference only and not required by the build tools.\r
#\r
-# VALID_ARCHITECTURES = IA32 X64 IPF EBC\r
+# VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64\r
+#\r
+# DRIVER_BINDING = gEhciDriverBinding\r
+# COMPONENT_NAME = gEhciComponentName\r
+# COMPONENT_NAME2 = gEhciComponentName2\r
#\r
\r
-[Sources.common]\r
+[Sources]\r
UsbHcMem.h\r
EhciUrb.c\r
EhciReg.h\r
MdeModulePkg/MdeModulePkg.dec\r
\r
[FeaturePcd]\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport ## CONSUMES\r
\r
[LibraryClasses]\r
MemoryAllocationLib\r
BaseMemoryLib\r
DebugLib\r
PcdLib\r
+ ReportStatusCodeLib\r
+\r
+[Guids]\r
+ gEfiEventExitBootServicesGuid ## SOMETIMES_CONSUMES ## Event\r
\r
[Protocols]\r
- gEfiPciIoProtocolGuid # PROTOCOL ALWAYS_CONSUMED\r
- gEfiUsb2HcProtocolGuid # PROTOCOL ALWAYS_CONSUMED\r
+ gEfiPciIoProtocolGuid ## TO_START\r
+ gEfiUsb2HcProtocolGuid ## BY_START\r
+\r
+# [Event]\r
+# EVENT_TYPE_PERIODIC_TIMER ## CONSUMES\r
+#\r
\r
+[UserExtensions.TianoCore."ExtraFiles"]\r
+ EhciDxeExtra.uni\r