summaryrefslogtreecommitdiffstats
path: root/MdeModulePkg/Include
diff options
context:
space:
mode:
authorBandaru, Purna Chandra Rao <Purna.Chandra.Rao.Bandaru@intel.com>2022-03-08 20:19:35 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2022-03-10 01:45:14 +0000
commitf06941cc46d002f66875b6f2f711fa3df2775da4 (patch)
tree91d5bc5935631b3175325b74b05e57579cfedacb /MdeModulePkg/Include
parentc63ef58698da1b830d25fd7239c0f5a4e28f70e4 (diff)
downloadedk2-f06941cc46d002f66875b6f2f711fa3df2775da4.tar.gz
edk2-f06941cc46d002f66875b6f2f711fa3df2775da4.tar.bz2
edk2-f06941cc46d002f66875b6f2f711fa3df2775da4.zip
MdeModulePkg: Add bRefClkFreq card attribute programming support
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3851 When the UFS card comes out of Manufacturer, bRefClkFreq attribute is set to 1h on the UFS card as per the Manufacturer Default Value specified by the spec JESD220*. However, depends on the UFS host system environment, it need to be set to the correct value. Reference Clock Frequency value 0h:19.2 MHz 1h: 26 MHz 2h: 38.4 MHz 3h: Obsolete Others: Reserved Cc: Wu Hao A <hao.a.wu@intel.com> Cc: Albecki Mateusz <mateusz.albecki@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Signed-off-by: Purna Chandra Rao Bandaru <purna.chandra.rao.bandaru@intel.com> Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Diffstat (limited to 'MdeModulePkg/Include')
-rw-r--r--MdeModulePkg/Include/Protocol/UfsHostControllerPlatform.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/MdeModulePkg/Include/Protocol/UfsHostControllerPlatform.h b/MdeModulePkg/Include/Protocol/UfsHostControllerPlatform.h
index faa82d0c4e..32e9f6488c 100644
--- a/MdeModulePkg/Include/Protocol/UfsHostControllerPlatform.h
+++ b/MdeModulePkg/Include/Protocol/UfsHostControllerPlatform.h
@@ -1,7 +1,7 @@
/** @file
EDKII_UFS_HC_PLATFORM_PROTOCOL definition.
-Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2019 - 2022, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -11,7 +11,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
#include <Protocol/UfsHostController.h>
-#define EDKII_UFS_HC_PLATFORM_PROTOCOL_VERSION 1
+#define EDKII_UFS_HC_PLATFORM_PROTOCOL_VERSION 2
extern EFI_GUID gEdkiiUfsHcPlatformProtocolGuid;
@@ -83,6 +83,13 @@ typedef enum {
EdkiiUfsHcPostLinkStartup
} EDKII_UFS_HC_PLATFORM_CALLBACK_PHASE;
+typedef enum {
+ EdkiiUfsCardRefClkFreq19p2Mhz,
+ EdkiiUfsCardRefClkFreq26Mhz,
+ EdkiiUfsCardRefClkFreq38p4Mhz,
+ EdkiiUfsCardRefClkFreqObsolete
+} EDKII_UFS_CARD_REF_CLK_FREQ_ATTRIBUTE;
+
/**
Callback function for platform driver.
@@ -118,6 +125,10 @@ struct _EDKII_UFS_HC_PLATFORM_PROTOCOL {
/// for host controller.
///
EDKII_UFS_HC_PLATFORM_CALLBACK Callback;
+ ///
+ /// Reference Clock Frequency Ufs Card Attribute that need to be set in this Ufs Host Environment.
+ ///
+ EDKII_UFS_CARD_REF_CLK_FREQ_ATTRIBUTE RefClkFreq;
};
#endif