https://bugzilla.tianocore.org/show_bug.cgi?id=4727 Recently some of XHCI host controllers require to have extra 1ms delay before accessing any MMIO register during reset. PHY transition from P3 to P0 can take around 1.3ms and the xHCI reset can take around 1.5ms. Add PCD to control the delay, the default is 2 ms. Cc: Ray Ni <ray.ni@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Krzysztof Lewandowski <krzysztof.lewandowski@intel.com> Cc: Jenny Huang <jenny.huang@intel.com> Cc: More Shih <more.shih@intel.com> Cc: Ian Chiu <ian.chiu@intel.com> Signed-off-by: Xianglei Cai <xianglei.cai@intel.com> Reviewed-by: Krzysztof Lewandowski <krzysztof.lewandowski@intel.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
78 lines
2.0 KiB
INI
78 lines
2.0 KiB
INI
## @file
|
|
# The XhciDxe driver is responsible for managing the behavior of XHCI controller.
|
|
# It implements the interfaces of monitoring the status of all ports and transferring
|
|
# Control, Bulk, Interrupt and Isochronous requests to those attached usb LS/FS/HS/SS devices.
|
|
#
|
|
# (C) Copyright 2023 Hewlett Packard Enterprise Development LP<BR>
|
|
# Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
|
|
#
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
#
|
|
#
|
|
##
|
|
|
|
[Defines]
|
|
INF_VERSION = 0x00010005
|
|
BASE_NAME = XhciDxe
|
|
MODULE_UNI_FILE = XhciDxe.uni
|
|
FILE_GUID = B7F50E91-A759-412c-ADE4-DCD03E7F7C28
|
|
MODULE_TYPE = UEFI_DRIVER
|
|
VERSION_STRING = 1.0
|
|
|
|
ENTRY_POINT = XhcDriverEntryPoint
|
|
|
|
#
|
|
# The following information is for reference only and not required by the build tools.
|
|
#
|
|
# VALID_ARCHITECTURES = IA32 X64 EBC ARM AARCH64
|
|
#
|
|
# DRIVER_BINDING = gXhciDriverBinding
|
|
# COMPONENT_NAME = gXhciComponentName
|
|
# COMPONENT_NAME2 = gXhciComponentName2
|
|
#
|
|
|
|
[Sources]
|
|
Xhci.c
|
|
XhciReg.c
|
|
XhciSched.c
|
|
UsbHcMem.c
|
|
UsbHcMem.h
|
|
ComponentName.c
|
|
ComponentName.h
|
|
Xhci.h
|
|
XhciReg.h
|
|
XhciSched.h
|
|
|
|
[Packages]
|
|
MdePkg/MdePkg.dec
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
|
|
[LibraryClasses]
|
|
MemoryAllocationLib
|
|
BaseLib
|
|
UefiLib
|
|
UefiBootServicesTableLib
|
|
UefiDriverEntryPoint
|
|
BaseMemoryLib
|
|
DebugLib
|
|
ReportStatusCodeLib
|
|
TimerLib
|
|
PcdLib
|
|
|
|
[Guids]
|
|
gEfiEventExitBootServicesGuid ## SOMETIMES_CONSUMES ## Event
|
|
|
|
[Protocols]
|
|
gEfiPciIoProtocolGuid ## TO_START
|
|
gEfiUsb2HcProtocolGuid ## BY_START
|
|
|
|
[Pcd]
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdDelayXhciHCReset ## CONSUMES
|
|
|
|
# [Event]
|
|
# EVENT_TYPE_PERIODIC_TIMER ## CONSUMES
|
|
#
|
|
|
|
[UserExtensions.TianoCore."ExtraFiles"]
|
|
XhciDxeExtra.uni
|