summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix bug in UncachedMemoryAllocationLib, Assembler, make ↵andrewfish2010-02-165-8/+13
| | | | | | DefaultExceptionHandler lib inc the PC past the faulting instruction to aid debug. Update LR in Exception hanlder, so return address can get updated properly. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10018 6f19259b-4bc3-4df7-8a09-765794883524
* Fix typo in mfill commandandrewfish2010-02-161-2/+2
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10017 6f19259b-4bc3-4df7-8a09-765794883524
* 1) Fix build issuesmdkinney2010-02-163-111/+128
| | | | | | | | | | | 2) Change ARCHITECTURAL_PROTOCOL_ENTRY name to EFI_CORE_PROTOCOL_NOTIFY_ENTRY so it can be used for both Architectural Protocols and optional protocols that the DXE Core may use. Also remove BOOLEAN ArchitecturalProtocol field, so it is back to its original form. 3) Put mArchProtocols[] back to its original form, but add a NULL entry at the end so the end of the table can be easily detected in loops 4) Add mOptionalProtocols[] that at this time only has the SMM Base 2 Protocol in it. 5) Add NULL entry to mMissingProtocols[] so the end of the table can be easily detected. 6) Update all loops on mArchProtocols[], mOptionalProtocols, and mMissingProtocols[] to remove Index(s) and simply looks for a NULL ProtocolGuid to find the end of the table. 7) Update protocol notify events to pass the associated EFI_CORE_PROTOCOL_NOTIFY_ENTRY * as the Context parameter. This simplifies GenericProtocolNotify() by completely eliminating the search loop. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10016 6f19259b-4bc3-4df7-8a09-765794883524
* Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-162-50/+39
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10015 6f19259b-4bc3-4df7-8a09-765794883524
* Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-166-34/+17
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10014 6f19259b-4bc3-4df7-8a09-765794883524
* Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-162-14/+9
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10013 6f19259b-4bc3-4df7-8a09-765794883524
* Clean up HOB debug printsandrewfish2010-02-161-3/+3
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10012 6f19259b-4bc3-4df7-8a09-765794883524
* Fix crash in UnixPkg and BeagleBoard caused by gSmmBase2 getting added to ↵andrewfish2010-02-161-3/+3
| | | | | | the now incorectly named mARchProtocols list. CoreDispatchMissingArchProtocols() did to check to see if the element was an AP (not all are now). Also Missing entry was not bounds checked, it was assumed to be <= Index witch is no longer true. So in both UnixPkg and BeagleBoard the loop was blowing past the end and garbage data caused page faults. Also add m prefix to global. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10011 6f19259b-4bc3-4df7-8a09-765794883524
* After the ASSERT adjust the PC so you skip the faulting instruction. Lets ↵andrewfish2010-02-161-0/+17
| | | | | | you walk out of the exception handler and keeprunning code. This way you can walk out of the call stack. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10010 6f19259b-4bc3-4df7-8a09-765794883524
* Cleanup SerailIO drivers to have a device path and use PCD settings for ↵andrewfish2010-02-1513-257/+481
| | | | | | various stuff. Also clean up a few coding convention items. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10009 6f19259b-4bc3-4df7-8a09-765794883524
* Remove SMM_CORE as a supported module type for the MemoryAllocationLib ↵mdkinney2010-02-151-7/+3
| | | | | | instance that uses UEFI Boot Services git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10008 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-141-1/+2
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10007 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-141-1/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10006 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-141-2/+2
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10005 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-141-0/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10004 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-141-1/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10003 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-141-0/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10002 6f19259b-4bc3-4df7-8a09-765794883524
* Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney2010-02-142-0/+862
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10001 6f19259b-4bc3-4df7-8a09-765794883524
* 1) Remove dependency on the UEFI Boot Services Table Library so the gBS, ↵mdkinney2010-02-142-29/+18
| | | | | | | | | | gST, and gImageHandle symbols will not be automatically linked into an SMM Driver that uses this library. 2) Remove redundant include of <PiDxe.h> 3) Clean up constructor to use InSmm() library function instead of duplicating logic. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10000 6f19259b-4bc3-4df7-8a09-765794883524
* Remove constructor from this library. This library already has SMM CPU I/O ↵mdkinney2010-02-142-38/+5
| | | | | | | | | | | 2 in its [Depex], so any module using this library will not be dispatched until the SMM CPU I/O 2 Protocol is installed into the SMM handle database and also copied into the SMM Services Table. The worker functions in this library have also been updated to simply use the instance of the SMM CPU I/O 2 Protocol that is present in the SMM Services Table. The dependency on the UEFI Boot Services Table Library has also been removed so the gBS, gST, and gImageHandle symbols will not be automatically linked into an SMM Driver that uses this library. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9999 6f19259b-4bc3-4df7-8a09-765794883524
* Use atomic AsmDisableCache() and AsmDisableCache() functions instead of ↵mdkinney2010-02-141-20/+14
| | | | | | AsmWriteCr0() and AsmWbinvd() calls git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9998 6f19259b-4bc3-4df7-8a09-765794883524
* Update DXE Core to be compatible with PI 1.2 SMM Drivers.mdkinney2010-02-135-23/+44
| | | | | | | | | | | | PI 1.2 SMM Drivers are allowed to call UEFI/DXE services and Protocols from the entry point of the PI 1.2 SMM Driver. These UEFI/DXE services and Protocols may directly or indirectly calls the UEFI Boot Services RaiseTPL() and RestoreTPL(). These UEFI Boot Services use the CPU Architectural Protocol to enable interrupts if the TPL level is below TPL_HIGH_LEVEL and enable interrupts of the TPL is at TPL_HIGH_LEVEL. Interrupts should be masked while executing SMM drivers, so if a direct or indirect call to the UEFI Boot Service RestoreTPL() would enable interrupts, then an interrupt could be incorrectly delivered in SMM context. The solution is for the DXE Core to register for the PI 1.2 SMM Base2 Protocol. If that protocol is present in the platform, then the DXE Core can use the SMM Base 2 Protocol's InSmm() function to determine if the platform is currently executing in SMM content. If the current context is in SMM, then do not allow any requests to be forwarded to the CPU Architecture Protocol to enable interrupts. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9997 6f19259b-4bc3-4df7-8a09-765794883524
* Fix help command scroll issue. Also add FV space used, and free space to dir ↵andrewfish2010-02-125-9/+54
| | | | | | command. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9996 6f19259b-4bc3-4df7-8a09-765794883524
* Update UNDI driver to expose dynamic media detect capability.xdu22010-02-121-2/+15
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9995 6f19259b-4bc3-4df7-8a09-765794883524
* Update SnpDxe to support dynamic media detect.xdu22010-02-123-212/+241
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9994 6f19259b-4bc3-4df7-8a09-765794883524
* Add media status relative definition to UEFI PXE header file.xdu22010-02-121-1/+19
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9993 6f19259b-4bc3-4df7-8a09-765794883524
* Change UI for dir of FV to make it less confusing.andrewfish2010-02-121-14/+17
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9992 6f19259b-4bc3-4df7-8a09-765794883524
* Add support for Seeking on FV, and update the device syntax to support ↵andrewfish2010-02-111-41/+77
| | | | | | specifying which section of the FV file you want to operate on, previously the only option was to operate on the Raw file. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9991 6f19259b-4bc3-4df7-8a09-765794883524
* Support HII VOID* dynamic/dynamicEx type PCD.klu22010-02-112-29/+66
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9990 6f19259b-4bc3-4df7-8a09-765794883524
* Update HiiDataBase to make sure that the installed StringPackages contains ↵lgao42010-02-111-1/+87
| | | | | | the same number string ID. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9989 6f19259b-4bc3-4df7-8a09-765794883524
* DUET BDS clean up.niruiyu2010-02-111-28/+0
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9988 6f19259b-4bc3-4df7-8a09-765794883524
* To follow UEFI spec 2.3 chapter 3.4.1.1, add the ConnectSingleController for ↵niruiyu2010-02-111-0/+5
| | | | | | removable media boot. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9987 6f19259b-4bc3-4df7-8a09-765794883524
* The fix is for EFI Linux capsule test case can not run.li-elvin2010-02-111-9/+9
| | | | | | It should use runtime library EfiSetVariable, gRT is not converted to virtual address which cause SetVariable failure in EFI Linux. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9986 6f19259b-4bc3-4df7-8a09-765794883524
* GraphicsOutputBlt() need judge parameter klu22010-02-111-1/+5
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9985 6f19259b-4bc3-4df7-8a09-765794883524
* Fix the issue that unknown format FV in Fvhob is installed for FvInfoPpi ↵klu22010-02-111-1/+22
| | | | | | more than one time. The fixing is search dispatched Fv database and cached unknown Fv information for all Fv in FvHob, if Fv has been identified by PeiCore, then no need install FvInfoPpi for it again. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9984 6f19259b-4bc3-4df7-8a09-765794883524
* Update PeCoffExtraActionLib for NT32 to allow an app or driver to be loaded ↵mdkinney2010-02-111-3/+28
| | | | | | more than once. Only the first instance will support source level debug. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9983 6f19259b-4bc3-4df7-8a09-765794883524
* Do not set gBS to NULL when the ExitBootServices event notification for the ↵mdkinney2010-02-111-6/+1
| | | | | | | | | | UEFI Runtime Lib is executed. There is no guarantee that the ExitBootServices notification function from this lib will be the last ExitBootServices notification function registered by a module that uses the UEFI Runtime lib. If additional ExitBootServices notification functions require the use of gBS, then setting to NULL will break those additional ExitBootServices notification functions. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9982 6f19259b-4bc3-4df7-8a09-765794883524
* Pass the correct TokenNumber into a CallbackOnSet notification function. ↵mdkinney2010-02-111-28/+22
| | | | | | | | | | | | | The value being passed in was off by 1. This would not normally cause an issue because the correct notification function was being called. There is only an issue if the same notification function is being used for multiple tokens, and the notification function needs to use the TokenNumber parameter to determine which token setting caused the callback function to be called. Update the logic so the CallbackOnSet notification functions are not called with the internal PCD database lock in the acquired state. This allows other PCD Get/Set operations to be performed from within a CallbackOnSet notification. Update logic so the PCD database lock is not left in the acquired state when SetWorker() returns EFI_INVALID_PARAMETER. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9981 6f19259b-4bc3-4df7-8a09-765794883524
* Pass the correct TokenNumber into a CallbackOnSet notification function. ↵mdkinney2010-02-111-1/+1
| | | | | | | | | The value being passed in was off by 1. This would not normally cause an issue because the correct notification function was being called. There is only an issue if the same notification function is being used for multiple tokens, and the notification function needs to use the TokenNumber parameter to determine which token setting caused the callback function to be called. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9980 6f19259b-4bc3-4df7-8a09-765794883524
* Fix issue with making a seek to zero on an FV file legal.andrewfish2010-02-111-3/+5
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9979 6f19259b-4bc3-4df7-8a09-765794883524
* 1. free those inserted NsKeyNode resource when releasing SetKeyBoardLayout ↵erictian2010-02-113-6/+8
| | | | | | | | event. 2. cleanup HiiDataBaseDxe to directly use gEfiHiiKeyBoardLayoutGuid which is used as the guid of event group. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9978 6f19259b-4bc3-4df7-8a09-765794883524
* Coding style fix and minor improvements.rsun32010-02-1123-420/+113
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9977 6f19259b-4bc3-4df7-8a09-765794883524
* Support Name/Value Storage in UEFI2.1 HII driver.lgao42010-02-111-0/+10
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9976 6f19259b-4bc3-4df7-8a09-765794883524
* Add example of Name/Value pair var store to DriverSamplelgao42010-02-115-9/+327
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9975 6f19259b-4bc3-4df7-8a09-765794883524
* Update EBL to have an optional width specifier on commands. So hexdump.4 ↵andrewfish2010-02-105-80/+166
| | | | | | means use a width of 4 bytes. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9974 6f19259b-4bc3-4df7-8a09-765794883524
* Only ment to add support to build and launch Ebl shell, not switch over to ↵andrewfish2010-02-102-3/+3
| | | | | | it. Undo the switch. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9973 6f19259b-4bc3-4df7-8a09-765794883524
* Remove dead command and clean up some coding style stuff.andrewfish2010-02-104-200/+51
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9972 6f19259b-4bc3-4df7-8a09-765794883524
* The VOLUME name case did not reserve enough storage in the CWD function.andrewfish2010-02-101-1/+1
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9971 6f19259b-4bc3-4df7-8a09-765794883524
* Fix issue with VOLUMN Name as an alias for device name.andrewfish2010-02-101-42/+43
| | | | git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9970 6f19259b-4bc3-4df7-8a09-765794883524
* UefiCpuPkg/CpuDxe: Fix build errorjljusten2010-02-101-4/+1
| | | | | | This driver was not building following the r9935 & r9941 changes. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9969 6f19259b-4bc3-4df7-8a09-765794883524