summaryrefslogtreecommitdiffstats
path: root/OvmfPkg/EmuVariableFvbRuntimeDxe/Fvb.inf
Commit message (Collapse)AuthorAgeFilesLines
* OvmfPkg: Replace BSD License with BSD+Patent LicenseMichael D Kinney2019-04-091-6/+1
| | | | | | | | | | | | | | | | | | | | https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
* OvmfPkg: Removing ipf which is no longer supported from edk2.chenc22018-06-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing rules for Ipf sources file: * Remove the source file which path with "ipf" and also listed in [Sources.IPF] section of INF file. * Remove the source file which listed in [Components.IPF] section of DSC file and not listed in any other [Components] section. * Remove the embedded Ipf code for MDE_CPU_IPF. Removing rules for Inf file: * Remove IPF from VALID_ARCHITECTURES comments. * Remove DXE_SAL_DRIVER from LIBRARY_CLASS in [Defines] section. * Remove the INF which only listed in [Components.IPF] section in DSC. * Remove statements from [BuildOptions] that provide IPF specific flags. * Remove any IPF sepcific sections. Removing rules for Dec file: * Remove [Includes.IPF] section from Dec. Removing rules for Dsc file: * Remove IPF from SUPPORTED_ARCHITECTURES in [Defines] section of DSC. * Remove any IPF specific sections. * Remove statements from [BuildOptions] that provide IPF specific flags. Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Michael D Kinney <michael.d.kinney@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chen A Chen <chen.a.chen@intel.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
* OvmfPkg/EmuVariableFvbRuntimeDxe: stop using PcdVariableStoreSizeLaszlo Ersek2018-03-301-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 62f43f7c1947c, we set PcdVariableStoreSize to the same value as PcdFlashNvStorageVariableSize (which in turn comes from VARS_LIVE_SIZE in "OvmfPkg.fdf.inc"). This equality between both PCDs is a false requirement from EmuVariableFvbRuntimeDxe. FVB drivers should use PcdFlashNvStorageVariableSize for supporting non-volatile variables (even if they happen to be kept in RAM only), along the other PcdFlashNvStorage* PCDs. Whereas PcdVariableStoreSize is for variables that are volatile at the gRT->SetVariable() / gRT->GetVariable() API level. (PlatformPei too bases the preallocation for EmuVariableFvbRuntimeDxe on PcdFlashNvStorageFtwSpareSize.) Replace PcdVariableStoreSize in EmuVariableFvbRuntimeDxe with the same-value PcdFlashNvStorageVariableSize. This means no change in behavior, and it allows us to increase PcdVariableStoreSize in a later patch without disturbing EmuVariableFvbRuntimeDxe (or PlatformPei). Cc: Anthony Perard <anthony.perard@citrix.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Gary Ching-Pang Lin <glin@suse.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Julien Grall <julien.grall@linaro.org> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Gary Lin <glin@suse.com> Tested-by: Gary Lin <glin@suse.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
* OvmfPkg/EmuVariableFvbRuntimeDxe: list "Fvb.h" in the INF fileLaszlo Ersek2018-03-131-0/+1
| | | | | | | | | | | | | | | | | | Among other things, the header file provides (extern) declarations for the EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL member functions that are defined in "Fvb.c". This way "mEmuVarsFvb.FwVolBlockInstance" can be initialized near the top of "Fvb.c", ahead of the member function definitions. Cc: Anthony Perard <anthony.perard@citrix.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Julien Grall <julien.grall@linaro.org> Suggested-by: Michael Kinney <michael.d.kinney@intel.com> Ref: http://mid.mail-archive.com/E92EE9817A31E24EB0585FDF735412F56327F7D3@ORSMSX113.amr.corp.intel.com Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
* OvmfPkg/EmuVariableFvbRuntimeDxe: always format an auth varstore headerLaszlo Ersek2017-05-181-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In this patch, we extend commit d92eaabefbe0 ("OvmfPkg: simplify VARIABLE_STORE_HEADER generation", 2016-02-05) to EmuVariableFvbRuntimeDxe. This is the difference between FvAndVarTemplate and FvAndAuthenticatedVarTemplate: > --- non-auth 2017-05-05 22:32:06.001512283 +0200 > +++ auth 2017-05-05 22:32:18.841364882 +0200 > @@ -1,7 +1,7 @@ > // > - // Templates for standard (non-authenticated) variable FV header > + // Templates for authenticated variable FV header > // > - STATIC FVB_FV_HDR_AND_VARS_TEMPLATE FvAndVarTemplate = { > + STATIC FVB_FV_HDR_AND_VARS_TEMPLATE FvAndAuthenticatedVarTemplate = { > { // EFI_FIRMWARE_VOLUME_HEADER FvHdr; > // UINT8 ZeroVector[16]; > { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, > @@ -34,7 +34,7 @@ > EFI_FVH_REVISION, > > // EFI_FV_BLOCK_MAP_ENTRY BlockMap[1]; > - { > + { > { > 2, // UINT32 NumBlocks; > EMU_FVB_BLOCK_SIZE // UINT32 Length; > @@ -44,8 +44,8 @@ > // EFI_FV_BLOCK_MAP_ENTRY EndBlockMap; > { 0, 0 }, // End of block map > { // VARIABLE_STORE_HEADER VarHdr; > - // EFI_GUID Signature; > - EFI_VARIABLE_GUID, > + // EFI_GUID Signature; // need authenticated variables for secure boot > + EFI_AUTHENTICATED_VARIABLE_GUID, > > // UINT32 Size; > ( After this change, using "-bios", the variable driver logs: - with the SB feature enabled: > Variable driver will work with auth variable format! > Variable driver will work with auth variable support! - with the SB feature disabled: > Variable driver will work with auth variable format! > Variable driver will continue to work without auth variable support! Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
* OvmfPkg/EmuVariableFvbRuntimeDxe: Add support for PcdSecureBootEnablejljusten2012-03-091-0/+3
| | | | | | | | | | | When PcdSecureBootEnable is true, the authenticated variable FV is created. Otherwise the standard FV is created. Signed-off-by: lgrosenb Reviewed-by: jljusten Reviewed-by: mdkinney git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13092 6f19259b-4bc3-4df7-8a09-765794883524
* OvmfPkg EmuVariableFvb: Use 64-bit NV storage PCDjljusten2011-01-161-1/+1
| | | | | | | | | | Change from using PcdFlashNvStorageVariableBase to PcdFlashNvStorageVariableBase64. This will make sure the EMU Variable FVB will function in systems with more than 4GB of memory. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11252 6f19259b-4bc3-4df7-8a09-765794883524
* OvmfPkg EMU FVB: Convert to FVB2 protocoljljusten2011-01-091-2/+2
| | | | | | | Convert from using EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL to EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11240 6f19259b-4bc3-4df7-8a09-765794883524
* Update the copyright notice formathhtian2010-04-281-2/+2
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10439 6f19259b-4bc3-4df7-8a09-765794883524
* 1. Correct File header to ## @filelgao42010-02-231-2/+2
| | | | | | 2. Remove unnecessary .common] postfix on section. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10051 6f19259b-4bc3-4df7-8a09-765794883524
* Remove unnecessary use of FixedPcdxxx() functions and [FixedPcd] INF ↵mdkinney2010-01-301-13/+3
| | | | | | | | | | sections. These should only be used for PCDs that are used to pre-init global variables, pre-init global structures, or size arrays. Do some minor clean ups to INF files git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9870 6f19259b-4bc3-4df7-8a09-765794883524
* Add EmuVariableFvbRuntimeDxe driver.jljusten2009-09-261-0/+83
This driver implements a firmware volume block protocol instance which is stored in system memory. The MdeModulePkg/Universal/Variable/RuntimeDxe and MdeModulePkg/Universal/FaultTolerantWriteDxe drivers make use of this FVB instance to provide variable services. This driver links to a PlatformFvb library to allow for platform specific processing to take place when data is written to the FVB. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9315 6f19259b-4bc3-4df7-8a09-765794883524