From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web10.916.1686193607701518790 for ; Wed, 07 Jun 2023 20:06:53 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=HsX1U97g; spf=pass (domain: intel.com, ip: 192.55.52.136, mailfrom: zhiguang.liu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686193613; x=1717729613; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=q46HlOgPi/8FPd3TFZ8bmmoF4YsXLOKJMNWuomL+kto=; b=HsX1U97gmDceX0l9m5lL5m2OMXLsxEm29njsBb2TrWkacL69knmmaC2V fiHbo9l9Ym8HJausEdoll3IaXlZcM4ESMxQNDi89DsEkfqTRGL9Qt3FyA j5Qb2fqfAd84XwNK2A41cDFjZQMpS0m9zVf2ag1pOizBWSGmcaZssiYcV vCZ4WbazhhYjLPtrCVyb6/1ZtkG3POoAdV6K4l2yf34XH8pYuzKJm/ZmQ cp/riVVdQfZX5tnVe+PBI93x6Zetgz/+k0UMhosAai9cdvYvT9RVMB+mZ LdowkGE4R+n9EqDW2Naa3415qHxnecoC726KkQEAtOIjEil9G5M9xMW3h Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10734"; a="336808930" X-IronPort-AV: E=Sophos;i="6.00,226,1681196400"; d="scan'208";a="336808930" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2023 20:06:53 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10734"; a="742933593" X-IronPort-AV: E=Sophos;i="6.00,226,1681196400"; d="scan'208";a="742933593" Received: from shwdesfp01.ccr.corp.intel.com ([10.239.158.151]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2023 20:06:50 -0700 From: "Zhiguang Liu" To: devel@edk2.groups.io Cc: Zhiguang Liu , Eric Dong , Ray Ni , Rahul Kumar , Gerd Hoffmann Subject: [PATCH 4/4] UefiCpuPkg: Init new MSR value for MtrrLib Unit Test Date: Thu, 8 Jun 2023 11:06:29 +0800 Message-Id: <20230608030629.2734-4-zhiguang.liu@intel.com> X-Mailer: git-send-email 2.31.1.windows.1 In-Reply-To: <20230608030629.2734-1-zhiguang.liu@intel.com> References: <20230608030629.2734-1-zhiguang.liu@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3394 Using new API GetMaxPlatformAddressBits, MtrrLib Unit Test needs to provide the value of MSR MSR_IA32_TME_CAPABILITY. Cc: Eric Dong Cc: Ray Ni Cc: Rahul Kumar Cc: Gerd Hoffmann Signed-off-by: Zhiguang Liu --- UefiCpuPkg/Library/MtrrLib/UnitTest/Support.c | 7 +++++++ UefiCpuPkg/Test/UefiCpuPkgHostTest.dsc | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/UefiCpuPkg/Library/MtrrLib/UnitTest/Support.c b/UefiCpuPkg/Library/MtrrLib/UnitTest/Support.c index ba1de10034..25df09f882 100644 --- a/UefiCpuPkg/Library/MtrrLib/UnitTest/Support.c +++ b/UefiCpuPkg/Library/MtrrLib/UnitTest/Support.c @@ -18,6 +18,7 @@ MSR_IA32_MTRR_PHYSMASK_REGISTER mVariableMtrrsPhysMask[MTRR_NUMBER_ MSR_IA32_MTRR_DEF_TYPE_REGISTER mDefTypeMsr; MSR_IA32_MTRRCAP_REGISTER mMtrrCapMsr; MSR_IA32_TME_ACTIVATE_REGISTER mTmeActivateMsr; +MSR_IA32_TME_CAPABILITY_REGISTER mTmeCapabilityMsr; CPUID_VERSION_INFO_EDX mCpuidVersionInfoEdx; CPUID_STRUCTURED_EXTENDED_FEATURE_FLAGS_ECX mCpuidExtendedFeatureFlagsEcx; CPUID_VIR_PHY_ADDRESS_SIZE_EAX mCpuidVirPhyAddressSizeEax; @@ -266,6 +267,10 @@ UnitTestMtrrLibAsmReadMsr64 ( return mTmeActivateMsr.Uint64; } + if (MsrIndex == MSR_IA32_TME_CAPABILITY) { + return mTmeCapabilityMsr.Uint64; + } + // // Should never fall through to here // @@ -393,10 +398,12 @@ InitializeMtrrRegs ( mCpuidExtendedFeatureFlagsEcx.Bits.TME_EN = 1; mTmeActivateMsr.Bits.TmeEnable = 1; mTmeActivateMsr.Bits.MkTmeKeyidBits = SystemParameter->MkTmeKeyidBits; + mTmeCapabilityMsr.Bits.MkTmeMaxKeyidBits = SystemParameter->MkTmeKeyidBits; } else { mCpuidExtendedFeatureFlagsEcx.Bits.TME_EN = 0; mTmeActivateMsr.Bits.TmeEnable = 0; mTmeActivateMsr.Bits.MkTmeKeyidBits = 0; + mTmeCapabilityMsr.Bits.MkTmeMaxKeyidBits = 0; } return UNIT_TEST_PASSED; diff --git a/UefiCpuPkg/Test/UefiCpuPkgHostTest.dsc b/UefiCpuPkg/Test/UefiCpuPkgHostTest.dsc index e72e4cd622..8f680ef711 100644 --- a/UefiCpuPkg/Test/UefiCpuPkgHostTest.dsc +++ b/UefiCpuPkg/Test/UefiCpuPkgHostTest.dsc @@ -32,7 +32,10 @@ # # Build HOST_APPLICATION that tests the MtrrLib # - UefiCpuPkg/Library/MtrrLib/UnitTest/MtrrLibUnitTestHost.inf + UefiCpuPkg/Library/MtrrLib/UnitTest/MtrrLibUnitTestHost.inf { + + CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf + } # # Build HOST_APPLICATION that tests the CpuPageTableLib -- 2.31.1.windows.1