X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=EmulatorPkg%2FSec%2FSec.c;h=8a015682ddd07a9e395f38f0ad6fb1b58ef1416c;hp=4468d6f07b2c94b302aa24b56b0574427e4477bc;hb=d18d8a1d0e370f8ce6ccc2725f4170586d457e53;hpb=bb89ec1a7ec2f8d35033df9e47b3604925da3bd3 diff --git a/EmulatorPkg/Sec/Sec.c b/EmulatorPkg/Sec/Sec.c index 4468d6f07b..8a015682dd 100644 --- a/EmulatorPkg/Sec/Sec.c +++ b/EmulatorPkg/Sec/Sec.c @@ -1,7 +1,7 @@ /*++ @file Stub SEC that is called from the OS appliation that is the root of the emulator. - - The OS application will call the SEC with the PEI Entry Point API. + + The OS application will call the SEC with the PEI Entry Point API. Copyright (c) 2011, Apple Inc. All rights reserved.
This program and the accompanying materials @@ -18,7 +18,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI mSecTemporaryRamSupportPpi = { +EFI_PEI_TEMPORARY_RAM_SUPPORT_PPI mSecTemporaryRamSupportPpi = { SecTemporaryRamSupport }; @@ -35,8 +35,8 @@ EFI_PEI_PPI_DESCRIPTOR gPrivateDispatchTable[] = { /** The entry point of PE/COFF Image for the PEI Core, that has been hijacked by this - SEC that sits on top of an OS application. So the entry and exit of this module - has the same API. + SEC that sits on top of an OS application. So the entry and exit of this module + has the same API. This function is the entry point for the PEI Foundation, which allows the SEC phase to pass information about the stack, temporary RAM and the Boot Firmware Volume. @@ -54,7 +54,7 @@ EFI_PEI_PPI_DESCRIPTOR gPrivateDispatchTable[] = { @param SecCoreData Points to a data structure containing information about the PEI core's operating environment, such as the size and location of - temporary RAM, the stack location and the BFV location. + temporary RAM, the stack location and the BFV location. @param PpiList Points to a list of one or more PPI descriptors to be installed initially by the PEI core. An empty PPI list consists of a single @@ -65,11 +65,11 @@ EFI_PEI_PPI_DESCRIPTOR gPrivateDispatchTable[] = { and/or code in these early PPIs. **/ -VOID +VOID EFIAPI _ModuleEntryPoint ( IN EFI_SEC_PEI_HAND_OFF *SecCoreData, - IN EFI_PEI_PPI_DESCRIPTOR *PpiList + IN EFI_PEI_PPI_DESCRIPTOR *PpiList ) { EFI_STATUS Status; @@ -81,29 +81,29 @@ _ModuleEntryPoint ( EFI_PEI_PPI_DESCRIPTOR *SecPpiList; UINTN SecReseveredMemorySize; UINTN Index; - + EMU_MAGIC_PAGE()->PpiList = PpiList; ProcessLibraryConstructorList (); - + DEBUG ((EFI_D_ERROR, "SEC Has Started\n")); - + // // Add Our PPIs to the list // SecReseveredMemorySize = sizeof (gPrivateDispatchTable); for (Ppi = PpiList, Index = 1; ; Ppi++, Index++) { SecReseveredMemorySize += sizeof (EFI_PEI_PPI_DESCRIPTOR); - + if ((Ppi->Flags & EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST) == EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST) { // Since we are appending, need to clear out privious list terminator. - Ppi->Flags &= ~EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST; + Ppi->Flags &= ~EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST; break; } } - + // Keep everything on a good alignment SecReseveredMemorySize = ALIGN_VALUE (SecReseveredMemorySize, CPU_STACK_ALIGNMENT); - + #if 0 // Tell the PEI Core to not use our buffer in temp RAM SecPpiList = (EFI_PEI_PPI_DESCRIPTOR *)SecCoreData->PeiTemporaryRamBase; @@ -116,12 +116,12 @@ _ModuleEntryPoint ( // or I don't understand temp RAM correctly? // EFI_PEI_PPI_DESCRIPTOR PpiArray[10]; - + SecPpiList = &PpiArray[0]; ASSERT (sizeof (PpiArray) >= SecReseveredMemorySize); } #endif - // Copy existing list, and append our entries. + // Copy existing list, and append our entries. CopyMem (SecPpiList, PpiList, sizeof (EFI_PEI_PPI_DESCRIPTOR) * Index); CopyMem (&SecPpiList[Index], gPrivateDispatchTable, sizeof (gPrivateDispatchTable)); @@ -130,16 +130,16 @@ _ModuleEntryPoint ( FileHandle = NULL; Status = PeiServicesFfsFindNextFile (EFI_FV_FILETYPE_PEI_CORE, VolumeHandle, &FileHandle); ASSERT_EFI_ERROR (Status); - + Status = PeiServicesFfsFindSectionData (EFI_SECTION_PE32, FileHandle, &PeCoffImage); ASSERT_EFI_ERROR (Status); Status = PeCoffLoaderGetEntryPoint (PeCoffImage, (VOID **)&EntryPoint); ASSERT_EFI_ERROR (Status); - + // Transfer control to PEI Core EntryPoint (SecCoreData, SecPpiList); - + // PEI Core never returns ASSERT (FALSE); return;