| 1 | /** @file\r |
| 2 | \r |
| 3 | Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>\r |
| 4 | This program and the accompanying materials\r |
| 5 | are licensed and made available under the terms and conditions of the BSD License\r |
| 6 | which accompanies this distribution. The full text of the license may be found at\r |
| 7 | http://opensource.org/licenses/bsd-license.php.\r |
| 8 | \r |
| 9 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r |
| 10 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
| 11 | \r |
| 12 | **/\r |
| 13 | \r |
| 14 | #ifndef _FSP_PLATFORM_LIB_H_\r |
| 15 | #define _FSP_PLATFORM_LIB_H_\r |
| 16 | \r |
| 17 | /**\r |
| 18 | Get system memory resource descriptor by owner.\r |
| 19 | \r |
| 20 | @param[in] OwnerGuid resource owner guid\r |
| 21 | **/\r |
| 22 | EFI_HOB_RESOURCE_DESCRIPTOR *\r |
| 23 | EFIAPI\r |
| 24 | FspGetResourceDescriptorByOwner (\r |
| 25 | IN EFI_GUID *OwnerGuid\r |
| 26 | );\r |
| 27 | \r |
| 28 | /**\r |
| 29 | Get system memory from HOB.\r |
| 30 | \r |
| 31 | @param[in,out] LowMemoryLength less than 4G memory length\r |
| 32 | @param[in,out] HighMemoryLength greater than 4G memory length\r |
| 33 | **/\r |
| 34 | VOID\r |
| 35 | EFIAPI\r |
| 36 | FspGetSystemMemorySize (\r |
| 37 | IN OUT UINT64 *LowMemoryLength,\r |
| 38 | IN OUT UINT64 *HighMemoryLength\r |
| 39 | );\r |
| 40 | \r |
| 41 | \r |
| 42 | /**\r |
| 43 | Set a new stack frame for the continuation function.\r |
| 44 | \r |
| 45 | **/\r |
| 46 | VOID\r |
| 47 | EFIAPI\r |
| 48 | FspSetNewStackFrame (\r |
| 49 | VOID\r |
| 50 | );\r |
| 51 | \r |
| 52 | /**\r |
| 53 | This function transfer control back to BootLoader after FspSiliconInit.\r |
| 54 | \r |
| 55 | **/\r |
| 56 | VOID\r |
| 57 | EFIAPI\r |
| 58 | FspSiliconInitDone (\r |
| 59 | VOID\r |
| 60 | );\r |
| 61 | \r |
| 62 | /**\r |
| 63 | This function returns control to BootLoader after MemoryInitApi.\r |
| 64 | \r |
| 65 | @param[in,out] HobListPtr The address of HobList pointer.\r |
| 66 | **/\r |
| 67 | VOID\r |
| 68 | EFIAPI\r |
| 69 | FspMemoryInitDone (\r |
| 70 | IN OUT VOID **HobListPtr\r |
| 71 | );\r |
| 72 | \r |
| 73 | /**\r |
| 74 | This function returns control to BootLoader after TempRamExitApi.\r |
| 75 | \r |
| 76 | **/\r |
| 77 | VOID\r |
| 78 | EFIAPI\r |
| 79 | FspTempRamExitDone (\r |
| 80 | VOID\r |
| 81 | );\r |
| 82 | \r |
| 83 | /**\r |
| 84 | This function handle NotifyPhase API call from the BootLoader.\r |
| 85 | It gives control back to the BootLoader after it is handled. If the\r |
| 86 | Notification code is a ReadyToBoot event, this function will return\r |
| 87 | and FSP continues the remaining execution until it reaches the DxeIpl.\r |
| 88 | \r |
| 89 | **/\r |
| 90 | VOID\r |
| 91 | EFIAPI\r |
| 92 | FspWaitForNotify (\r |
| 93 | VOID\r |
| 94 | );\r |
| 95 | \r |
| 96 | #endif\r |