#include <Library/MemoryAllocationLib.h>\r
#include <Library/UefiLib.h>\r
#include <Library/DevicePathLib.h>\r
+#include <Library/PcdLib.h>\r
\r
#include <Protocol/DevicePath.h>\r
#include <Protocol/PciIo.h>\r
//\r
// Generic time out value, 1 microsecond as unit.\r
//\r
-#define SD_MMC_HC_GENERIC_TIMEOUT 1 * 1000 * 1000\r
+#define SD_MMC_HC_GENERIC_TIMEOUT (PcdGet32 (PcdSdMmcGenericTimeoutValue))\r
\r
//\r
// SD/MMC async transfer timer interval, set by experience.\r
BaseLib\r
UefiDriverEntryPoint\r
DebugLib\r
+ PcdLib\r
\r
[Protocols]\r
gEdkiiSdMmcOverrideProtocolGuid ## SOMETIMES_CONSUMES\r
\r
[UserExtensions.TianoCore."ExtraFiles"]\r
SdMmcPciHcDxeExtra.uni\r
+\r
+[Pcd]\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSdMmcGenericTimeoutValue ## CONSUMES\r
# @Prompt Maximum permitted FwVol section nesting depth (exclusive).\r
gEfiMdeModulePkgTokenSpaceGuid.PcdFwVolDxeMaxEncapsulationDepth|0x10|UINT32|0x00000030\r
\r
+ ## Indicates the default timeout value for SD/MMC Host Controller operations in microseconds.\r
+ # @Prompt SD/MMC Host Controller Operations Timeout (us).\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSdMmcGenericTimeoutValue|1000000|UINT32|0x00000031\r
+\r
[PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]\r
## This PCD defines the Console output row. The default value is 25 according to UEFI spec.\r
# This PCD could be set to 0 then console output would be at max column and max row.\r
" TRUE - Capsule In Ram is supported.<BR>"\r
" FALSE - Capsule In Ram is not supported."\r
\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdSdMmcGenericTimeoutValue_PROMPT #language en-US "SD/MMC Host Controller Operations Timeout (us)."\r
+\r
+#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdSdMmcGenericTimeoutValue_HELP #language en-US "Indicates the default timeout value for SD/MMC Host Controller operations in microseconds."\r
+\r
#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCodRelocationDevPath_PROMPT #language en-US "Capsule On Disk relocation device path."\r
\r
#string STR_gEfiMdeModulePkgTokenSpaceGuid_PcdCodRelocationDevPath_HELP #language en-US "Full device path of platform specific device to store Capsule On Disk temp relocation file.<BR>"\r