From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web10.3800.1578457550722719234 for ; Tue, 07 Jan 2020 20:25:51 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: siyuan.fu@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Jan 2020 20:25:49 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,408,1571727600"; d="scan'208";a="217402865" Received: from shwdeopenpsi787.ccr.corp.intel.com ([10.239.158.56]) by fmsmga007.fm.intel.com with ESMTP; 07 Jan 2020 20:25:47 -0800 From: "Siyuan, Fu" To: devel@edk2.groups.io Cc: michael.d.kinney@intel.com, liming.gao@intel.com, eric.dong@intel.com, ray.ni@intel.com, lersek@redhat.com Subject: [Patch 0/2] Shadow microcode patch according to FIT microcode table. Date: Wed, 8 Jan 2020 12:25:23 +0800 Message-Id: <20200108042525.408-1-siyuan.fu@intel.com> X-Mailer: git-send-email 2.19.1.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The existing MpInitLib will shadow the microcode update patches from flash to memory and this is done by searching microcode region specified by PCD PcdCpuMicrocodePatchAddress and PcdCpuMicrocodePatchRegionSize. This brings a limition to platform FW that all the microcode patches must be placed in one continuous flash space. This patch set shadows microcode update according to FIT microcode entries if it's present, otherwise it will fallback to original logic (by PCD). Patch 1/2: Add FIT header file to MdePkg. Patch 2/2: Update microcode loader to shadow microcode according to FIT. Cc: Michael D Kinney Cc: Liming Gao Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Siyuan Fu (2): MdePkg: Add header file for Firmware Interface Table specification. UefiCpuPkg: Shadow microcode patch according to FIT microcode entry. .../IndustryStandard/FirmwareInterfaceTable.h | 76 ++++++ UefiCpuPkg/Library/MpInitLib/Microcode.c | 255 +++++++++++++----- UefiCpuPkg/Library/MpInitLib/MpLib.c | 4 +- UefiCpuPkg/Library/MpInitLib/MpLib.h | 7 +- 4 files changed, 276 insertions(+), 66 deletions(-) create mode 100644 MdePkg/Include/IndustryStandard/FirmwareInterfaceTable.h -- 2.19.1.windows.1