summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/Variable
AgeCommit message (Collapse)Author
2010-01-29Remove unnecessary use of FixedPcdxxx() functions and [FixedPcd] INF ↵mdkinney
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@9868 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-15Fix some coding style issues in MdeModulePkg.rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9774 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14add DataSize check to avoid PlatformLang/Lang variable is auto-mapped when ↵eric_tian
try to delete these variables. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9746 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-22add error handling for input parameter.eric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9583 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-17Fix parameter name in function header.xli24
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9439 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-17Following 3 updates are for spec update published in PI 1.2.xli24
1. Rename EFI_PEI_NEXT_VARIABLE_NAME2 to EFI_PEI_GET_NEXT_VARIABLE_NAME2, as PI 1.2 specifies. 2. Add return status description for PEI Service FfsGetVolumeInfo. 3. Update parameter description for EFI_PEI_READ_ONLY_VARIABLE2_PPI.NextVariableName(). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9438 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-10if PcdHwErrStorageSize is zero, it means HwErr variable store doesn't exist ↵eric_tian
in Variable Region. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9252 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-07EMU Variable: Add support for pre-reserved NV variable store.jljusten
Add PcdEmuVariableNvStoreReserved which allows a platform to declare a memory address for the EMU Variable driver to use for the NV variable store. The EMU Variable driver will look to see if the contents of this memory range appear to be a valid variable store, and if so the EMU driver will use the variables. If a platform can preserve a memory range across system resets, this feature can allow the EMU Variable driver's NV variable store to be preserved across a system reset. In the default case this PCD will be set as a fixed PCD with a value of 0. In this case this new feature should have minimal impact on the EMU Variable driver. (Perhaps a slight increase in code size, but no functional difference is expected.) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9240 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-27due to EmuVariable driver only uses volatile memory to simulate the variable ↵eric_tian
region, so PcdHwErrStorageSize should be less than or equal to PcdVariableStoreSize git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9204 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-26add assertion to ensure HwErr type variable range is less than or equal to ↵eric_tian
VariableStore range. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9199 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-11add condition judgment to avoid accessing NULL address if not found existing ↵eric_tian
variable. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9038 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-29add assertion to pass K8 check.eric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8679 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-23refine VariablePei driver to unify the algorithm of access ↵eric_tian
VariableIndexTable among various archs. 1. record the distance of two neighboring VAR_ADDED type variables rather than the offset of each variable. As the field recording this info is UINT16 width, the latter causes in IA32/X64 platform, it can only cache those variables from offset 0 to offset 2^16; in IPF platform, from offset 0 to offset 2^18(extend the scope by left-shift the offset two bits). when taking the former algorithm, the max range of caching variable is from offset 0 to offset 122*(2^16) git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8625 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-08Remove the additional build options.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8498 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-03fix the issue of Inadequate Memory Allocation in Variable Serviceseric_tian
In UpdateVariableInfo(), the code incorrectly allocate a small memory, whose size equate with the number of Unicode name. Should change it to be equal to the byte length of this Unicode name. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8457 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-04Fix a bug that L"PlatformLang" must be a null-terminated ASCII string ↵qhuang8
according to UEFI spec. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8232 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-30Replace references to RFC 3066 with RFC 4646. gikidy
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8212 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-29Acquire & Release the lock from the high level variable servicejljusten
routines similar to MdeModulePkg/Universal/Variable/RuntimeDxe. When the Acquire was in the FindVariable routine, is was being called by both EmuSetVariable and again in AutoUpdateLangVariable, which caused an ASSERT to fail. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8205 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-28Fix bug in variable driver about the incorrect usage for GetBestLanguage(), ↵qhuang8
which expects the NULL to be the last var arg git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8195 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-28updateeric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8194 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-27update platformlangcodes and langcodes to adapt new language convert algorithm.eric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8184 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-071. The original code has a bug on calculate the size of SCRATCH_SIZE. It ↵eric_tian
should be maximum value between PcdMaxVariableSize and PcdMaxHardwareErrorVariableSize. 2. Boot time variable reclaim issue is caused by incorrect flash layout. Platform integrator should ensure that the size of variable region must less than FTW spare space size. 3. Per UEFI Specification, variables of attribute HARDWARE_ERROR_RECORD are guaranteed to have its own storage space size.original implementation doesn’t meet this requirement git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8029 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-27update the QueryVariableInfo interface to first determine if the pointer ↵eric_tian
checked is pointing to a memory address inside Variable area. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7969 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-24Prefix variable services functions with 'Emu'. Specifically this isjljusten
done to avoid a conflict with the 'GetVariable' function defined in edk2/MdePkg/Include/Library/UefiLib.h. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7941 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-19Fix tracker 202216:linux runtime test issue.eric_tian
[Root Cause] The root cause is that in FindVariable function, original code logic will traverse all variable stored in variable volatile/non-volatile area. If the non-variable area is full and Linux sets a new variable, the caller of GetNextVariablePtr will get the address of next memory block, but this block doesn't be reserved as RUNTIME attribute. Therefore its corresponding page translation table doesn't exist and causes linux kernel panic. Note that, Variable Pei driver has not such issue as the flash area is accessed in pre-os environment.All page table entries are filled. The access to next memory block will not cause such issue. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7910 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-19close notify event to avoid variable architectural protocol to be installed ↵eric_tian
twice or more. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7904 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-16Fix tracker 202216:linux runtime test issue.eric_tian
[Root Cause] The root cause is that in FindVariable function, original code logic will traverse all variable stored in variable volatile/non-volatile area. If the non-variable area is full and Linux sets a new variable, the caller of GetNextVariablePtr will get the address of next memory block, but this block doesn't be reserved as RUNTIME attribute. Therefore its corresponding page translation table doesn't exist and causes linux kernel panic. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7890 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-10Fix K8 check error.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7849 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-10remove unused local variable FvbHandle lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7839 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-09retire FvbServiceLib class in MdeModulePkg, and also remove the two ↵eric_tian
instances in MdeModulePkg and ItaniumPlatformPkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7837 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-091. retire the FvbServiceLib. Directly locating FVB protocol to access ↵eric_tian
interfaces. 2. modify the method of getting right FVB protocol interface. move the notification event of FVB installation into variable driver. and also move ExitBootService event into variable driver. 3. use EFI_FVB2_WRITE_STATUS flag to distinct whether the FVB protocol supports writing operation or not.Currently, DxeCore installs FVB which has ~EFI_FVB2_WRITE_STATUS(that is, disable write) attrbiute. FvbRuntimeDxe driver should provide a full FVB protocol, which returns EFI_FVB2_WRITE_STATUS attribute to signify itself provide writable FVB protocol. So other modules which need write data by FVB protocol can locate it correctly. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7835 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-051. add missing free operation in conditional branch.eric_tian
2. when variable store header is invalid status, we will return EFI_VOLUME_CORRUPTED to let code assert, which is helpful to find root cause quickly. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7804 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-04use pcd to enable/disable variableInfo statistic feature in EmuRuntimeDxe ↵eric_tian
driver. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7797 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-04Update Variable driver to depend on full version FaultTolerantWrite ↵lgao4
protocol, and remove the lite version FaultTolerantWrite Dxe Driver. New full version FaultTolerantWriteDxe driver is added in MdeModulePkg. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7788 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-271. delete Include/Guid/VariableInfo.heric_tian
2. move VariableFormat.h into GUID directory and change the “Signature” field of the VARIABLE_STORE_HEADER to gEfiVariableGuid value. 3. merging VARIABLE_INFO_ENTRY structure into the new Include/Guid/VariableFormat.h 4. change gEfiVariableInfoGuid into gEfiVariableGuid. 5. modify FDF files to use new guid value instead of the original signature. 6. all code related to signature is changed to use guid value. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7728 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-26All UEFI applications in the MdeModukePkg should be placed in ↵eric_tian
MdeModulePkg/Application git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7704 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-25updateeric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7694 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-18Meta-data verified.gikidy
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7537 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-12add NULL pointer check.vanjeff
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7506 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-11Adjust code to fix potential array out-bound issues.qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7502 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06Add parenthesis to expression to make order of operations clearmdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7475 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06fix the operator priority bug.niry
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7470 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06Fix minor build issue. qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7465 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06fix ecc warningeric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7456 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-03use the GUIDed versions of events listed below: ↵jji4
EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE and EVT_SIGNAL_EXIT_BOOT_SERVICES git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7420 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-03Add information in Meta-Data fileeric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7400 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-02Remove the accidental check in of test code.qwang12
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7392 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-02Add in ASSERT to check out-of-bound and possible dereference of NULL pointers.qwang12
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7391 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-02The caller of FindVariable() function ensure VariableName != NULL && ↵eric_tian
VendorGuid != NULL. In the internal of this function, we only need to ensure that (VariableName[0] != 0 && VenderGuid != NULL) is true. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7389 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-30Split out Synchronization Library from Base Librarymdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7373 6f19259b-4bc3-4df7-8a09-765794883524