From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.31; helo=mga06.intel.com; envelope-from=star.zeng@intel.com; receiver=edk2-devel@lists.01.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 804F42119C8AB for ; Sun, 13 Jan 2019 07:38:01 -0800 (PST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Jan 2019 07:37:59 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,474,1539673200"; d="scan'208";a="311449881" Received: from shwdeopenpsi068.ccr.corp.intel.com ([10.239.158.46]) by fmsmga005.fm.intel.com with ESMTP; 13 Jan 2019 07:37:59 -0800 From: Star Zeng To: edk2-devel@lists.01.org Cc: Star Zeng Date: Sun, 13 Jan 2019 23:37:43 +0800 Message-Id: <1547393875-37188-1-git-send-email-star.zeng@intel.com> X-Mailer: git-send-email 2.7.0.windows.1 Subject: [PATCH 00/12] Merge EmuVariable and Real variable driver X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jan 2019 15:38:01 -0000 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1323 Repo: git@github.com:lzeng14/edk2.git Branch: MergedVariableDriver_EmuNvMode Purpose: 1. Add emulated variable NV mode support in MdeModulePkg\Universal\Variable\RuntimeDxe. Platform can configure PCD statically (build time) or dynamically (boot time) to support emulated variable NV mode. 2. Remove MdeModulePkg\Universal\Variable\EmuRuntimeDxe whose most codes are duplicated. Patches 1~5: Preparation Patch 6~7: Real work Patch 8~12: Migration for platforms and cleanup Test done: Build code with VS2012, VS2015 and GCC49. Regression: Boot Nt32, Ovmf (including 32, 3264 and 64 with no SMM) to UEFI SHELL. Boot some internal platform to UEFI SHELL and Windows. Functionality: Boot Nt32, Ovmf (including 32, 3264 and 64 with no SMM) to UEFI SHELL with PcdEmuVariableNvModeEnable == TRUE. More test will be welcome and appreciated. :) Patches to update edk2-platforms Repo will be sent out separately. Star Zeng (12): MdeModulePkg Variable: Add some missing changes for 9b18845 MdeModulePkg Variable: Abstract InitRealNonVolatileVariableStore MdeModulePkg Variable: Not get NV PCD in VariableWriteServiceInitialize MdeModulePkg Variable: Abstract VariableWriteServiceInitializeDxe/Smm MdeModulePkg: Add PcdEmuVariableNvModeEnable in dsc MdeModulePkg Variable: Add emulated variable NV mode support MdeModulePkg VariablePei: Don't check BOOT_IN_RECOVERY_MODE ArmVirtXen: Use merged variable driver for emulated NV mode BeagleBoardPkg: Use merged variable driver for emulated NV mode QuarkMin: Use merged variable driver for emulated NV mode CorebootPayloadPkg: Use merged variable driver for emulated NV mode MdeModule: Remove EmuVariableRuntimeDxe ArmVirtPkg/ArmVirtXen.dsc | 11 +- ArmVirtPkg/ArmVirtXen.fdf | 4 +- BeagleBoardPkg/BeagleBoardPkg.dsc | 11 +- BeagleBoardPkg/BeagleBoardPkg.fdf | 4 +- CorebootPayloadPkg/CorebootPayloadPkg.fdf | 4 +- CorebootPayloadPkg/CorebootPayloadPkgIa32.dsc | 11 +- CorebootPayloadPkg/CorebootPayloadPkgIa32X64.dsc | 11 +- MdeModulePkg/MdeModulePkg.dec | 10 +- MdeModulePkg/MdeModulePkg.dsc | 5 +- MdeModulePkg/MdeModulePkg.uni | 10 +- .../Universal/Variable/EmuRuntimeDxe/EmuVariable.c | 1820 -------------------- .../EmuRuntimeDxe/EmuVariableRuntimeDxe.inf | 88 - .../EmuRuntimeDxe/EmuVariableRuntimeDxe.uni | 22 - .../EmuRuntimeDxe/EmuVariableRuntimeDxeExtra.uni | 19 - .../Variable/EmuRuntimeDxe/InitVariable.c | 259 --- .../Universal/Variable/EmuRuntimeDxe/Variable.h | 277 --- MdeModulePkg/Universal/Variable/Pei/Variable.c | 8 +- .../Universal/Variable/Pei/VariablePei.inf | 3 +- .../Universal/Variable/RuntimeDxe/Variable.c | 431 +++-- .../Universal/Variable/RuntimeDxe/Variable.h | 10 +- .../Universal/Variable/RuntimeDxe/VariableDxe.c | 100 +- .../Variable/RuntimeDxe/VariableRuntimeDxe.inf | 4 +- .../Universal/Variable/RuntimeDxe/VariableSmm.c | 88 +- .../Universal/Variable/RuntimeDxe/VariableSmm.inf | 4 +- QuarkPlatformPkg/QuarkMin.dsc | 7 +- QuarkPlatformPkg/QuarkMin.fdf | 4 +- 26 files changed, 501 insertions(+), 2724 deletions(-) delete mode 100644 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c delete mode 100644 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf delete mode 100644 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.uni delete mode 100644 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxeExtra.uni delete mode 100644 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/InitVariable.c delete mode 100644 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/Variable.h -- 2.7.0.windows.1