summaryrefslogtreecommitdiff
path: root/EdkCompatibilityPkg/Compatibility/SmmBaseHelper/SmmBaseHelper.c
AgeCommit message (Collapse)Author
2012-06-26EdkCompatibilityPkg SmmBaseHelper: In SmmHandlerEntry(), add check to ensure ↵rsun3
CommBuff+CommBuffSize is outside of SMRAM. Signed-off by: Sun Rui <rui.sun@intel.com> Reviewed-by: Yao Jiewen <jiewen.yao@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13472 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-30Enhance the SmmBaseHelper driver to support changing ↵rsun3
SMBASE/IORestart/AutoHALTRestart CPU Save State registers for Framework SMM driver. Signed-off-by: rsun3 Reviewed-by: jfan12 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12230 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-17SmmBaseHelper: Update MP state in Framework SMST before transferring control ↵rsun3
to Framework SMM driver entry point. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10802 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24Update the copyright notice formathhtian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10419 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-22Add the correct check for the return value before use them.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10396 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-12Correct data conversion from pointer to integer.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10358 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-091. Add the missing function headers. lgao4
2. Update local variable name to match coding style. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10355 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-02Add function comments and refine function parameter IN OUT.jgong5
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10329 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-02Use on-demand paging for CpuSaveStates read/write. It was measured about ↵jgong5
200us for either read or write the PI CpuSaveStates to framework, ~400us in total on a platform with 80 CPUs with original for loop implementation. So with on-demand paging, if the framework SMI handler doesn’t read/write CpuSaveStates, ~400us will be saved. If the handler happens to use CpuSaveStates, there will be about 20us overhead for either read or write a page which contains 5 continuous CpuSaveStates. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10328 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-26Security enhancement to SMM Base thunk drivers: Framework SMM drivers can't ↵rsun3
be loaded after SMRAM is locked. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10316 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-19NumberOfCpus and SmmStartupThisAp field in Framework SMST should be updated ↵rsun3
per PI SMST at SMM runtime context. These two fields in PI SMST are not guaranteed to be valid at SMM initialization phase. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10285 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-18Update SmmBase Communicate Thunk behaivor to be compatible with Framework ↵rsun3
implemenation. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10271 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-17Remove the implementation limitation in the SmmBaseHelper driver that it ↵rsun3
assumes the Framework SMM driver to be loaded has a copy in memory. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10258 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-01Update code to match EDKII coding style.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10130 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25Fix the bug that SMM Base Protocol.Communicate() does not work.rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10067 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-21Add [depex] on gEfiMpServiceProtocolGuid so the number of CPUs is knownmdkinney
Add [depex] on gEfiSmmCpuIo2Protocol so we know that the SMM CPU I/O 2 Protocol in the PI SMST is valid git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10037 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16Use Memory Allocation Library instance for modules of type DXE_SMM_DRIVERmdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10015 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-27Clean up module to use SMM CPU Save State Protocol definitions from ↵mdkinney
IntelFrameworkPkg instead of duplicating definitions in this module. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9843 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-07Coding style fix.rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9689 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-05Fix bugs in SmmBaseHelper driver.rsun3
1. Should use sizeof(EFI_SMM_CPU_SAVE_STATE) instead of sizeof (EFI_SMI_CPU_SAVE_STATE) to allocate buffer for CpuSaveState in Framework SMST; 2. The type of Width parameter for ReadSaveState() and WriteSaveState() functions of SMM CPU Protocol is UINTN instead of an enumeration type. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9678 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-31Add 4 Framework/PI SMM thunk drivers. Combined use of these drivers can ↵rsun3
support usage model of PI SMM infrastructure + Framework Chipset SMM code + Framework platform SMM code in ECP platforms. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9657 6f19259b-4bc3-4df7-8a09-765794883524