From 24f4547c5c126176634dccb5816b28439ee82a89 Mon Sep 17 00:00:00 2001 From: Michael D Kinney Date: Mon, 29 Apr 2019 16:22:09 -0700 Subject: [PATCH] QuarkPlatformPkg: Set PcdSpeculationBarrierType to CPUID Set PcdSpeculationBarrierType to use CPUID instead of the default LFENCE in the BaseLib function SpeculationBarrier(). LFENCE requires SSE2, and Quark platforms do not support SSE2. Cc: Kelly Steele Cc: Liming Gao Signed-off-by: Michael D Kinney Reviewed-by: Michael Kubacki --- QuarkPlatformPkg/Quark.dsc | 7 ++++++- QuarkPlatformPkg/QuarkMin.dsc | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/QuarkPlatformPkg/Quark.dsc b/QuarkPlatformPkg/Quark.dsc index 422fd9cf8d..96ddc1565a 100644 --- a/QuarkPlatformPkg/Quark.dsc +++ b/QuarkPlatformPkg/Quark.dsc @@ -2,7 +2,7 @@ # Clanton Peak CRB platform with 32-bit DXE for 4MB/8MB flash devices. # # This package provides Clanton Peak CRB platform specific modules. -# Copyright (c) 2013 - 2018 Intel Corporation. +# Copyright (c) 2013 - 2019 Intel Corporation. # # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -448,6 +448,11 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryFileName|L"QUARKREC.Cap" !endif + # + # Quark does not support LFENCE. Use CPUID as speculation barrier + # + gEfiMdePkgTokenSpaceGuid.PcdSpeculationBarrierType|0x02 + [PcdsPatchableInModule] gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0 diff --git a/QuarkPlatformPkg/QuarkMin.dsc b/QuarkPlatformPkg/QuarkMin.dsc index 00e2febb54..8ca75bc474 100644 --- a/QuarkPlatformPkg/QuarkMin.dsc +++ b/QuarkPlatformPkg/QuarkMin.dsc @@ -406,6 +406,11 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand|FALSE + # + # Quark does not support LFENCE. Use CPUID as speculation barrier + # + gEfiMdePkgTokenSpaceGuid.PcdSpeculationBarrierType|0x02 + [PcdsPatchableInModule] gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0 -- 2.39.2