+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
-\r
- BootMode.c\r
-\r
-Abstract:\r
-\r
- EFI PEI Core Boot Mode services\r
-\r
-\r
-\r
-Revision History\r
-\r
---*/\r
-\r
-#include <PeiMain.h>\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PeiGetBootMode (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- OUT EFI_BOOT_MODE *BootMode\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- This service enables PEIMs to ascertain the present value of the boot mode. \r
-\r
-Arguments:\r
-\r
- PeiServices - The PEI core services table.\r
- BootMode - A pointer to contain the value of the boot mode. \r
-\r
-Returns:\r
-\r
- EFI_SUCCESS - The boot mode was returned successfully.\r
- EFI_INVALID_PARAMETER - BootMode is NULL.\r
-\r
---*/\r
-{\r
- PEI_CORE_INSTANCE *PrivateData; \r
- EFI_HOB_HANDOFF_INFO_TABLE *HandOffHob;\r
-\r
-\r
- if (BootMode == NULL) {\r
- return EFI_INVALID_PARAMETER;\r
- }\r
-\r
- PrivateData = PEI_CORE_INSTANCE_FROM_PS_THIS(PeiServices);\r
- \r
- HandOffHob = (PrivateData->HobList.HandoffInformationTable);\r
- \r
- *BootMode = HandOffHob->BootMode;\r
- \r
-\r
- return EFI_SUCCESS; \r
-}\r
-\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PeiSetBootMode (\r
- IN EFI_PEI_SERVICES **PeiServices,\r
- IN EFI_BOOT_MODE BootMode\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- This service enables PEIMs to update the boot mode variable. \r
-\r
-Arguments:\r
-\r
- PeiServices - The PEI core services table.\r
- BootMode - The value of the boot mode to set.\r
-\r
-Returns:\r
-\r
- EFI_SUCCESS - The value was successfully updated\r
-\r
---*/\r
-{\r
- PEI_CORE_INSTANCE *PrivateData; \r
- EFI_HOB_HANDOFF_INFO_TABLE *HandOffHob;\r
-\r
-\r
- PrivateData = PEI_CORE_INSTANCE_FROM_PS_THIS(PeiServices);\r
- \r
- HandOffHob = (PrivateData->HobList.HandoffInformationTable);\r
- \r
- HandOffHob->BootMode = BootMode;\r
-\r
-\r
- return EFI_SUCCESS; \r
-}\r