TianoCore EDK2 master
|
#include "UnitTestPeiServicesTablePointerLib.h"
Go to the source code of this file.
This file implements some PEI services about PPI.
Copyright (c) 2023, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file UnitTestPeiServicesTablePointerLibPpi.c.
EFI_STATUS InternalPeiInstallPpi | ( | IN CONST EFI_PEI_SERVICES ** | PeiServices, |
IN CONST EFI_PEI_PPI_DESCRIPTOR * | PpiList, | ||
IN BOOLEAN | Single | ||
) |
This function installs an interface in the PEI PPI database by GUID. The purpose of the service is to publish an interface that other parties can use to call additional PEIMs.
PeiServices | An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. |
PpiList | Pointer to a list of PEI PPI Descriptors. |
Single | TRUE if only single entry in the PpiList. FALSE if the PpiList is ended with an entry which has the EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST flag set in its Flags field. |
EFI_SUCCESS | if all PPIs in PpiList are successfully installed. |
EFI_INVALID_PARAMETER | if PpiList is NULL pointer if any PPI in PpiList is not valid |
EFI_OUT_OF_RESOURCES | if there is no more memory resource to install PPI |
Definition at line 30 of file UnitTestPeiServicesTablePointerLibPpi.c.
EFI_STATUS InternalPeiNotifyPpi | ( | IN CONST EFI_PEI_SERVICES ** | PeiServices, |
IN CONST EFI_PEI_NOTIFY_DESCRIPTOR * | NotifyList, | ||
IN BOOLEAN | Single | ||
) |
This function installs a notification service to be called back when a given interface is installed or reinstalled. The purpose of the service is to publish an interface that other parties can use to call additional PPIs that may materialize later.
PeiServices | An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. |
NotifyList | Pointer to list of Descriptors to notify upon. |
Single | TRUE if only single entry in the NotifyList. FALSE if the NotifyList is ended with an entry which has the EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST flag set in its Flags field. |
EFI_SUCCESS | if successful |
EFI_OUT_OF_RESOURCES | if no space in the database |
EFI_INVALID_PARAMETER | if not a good descriptor |
Definition at line 301 of file UnitTestPeiServicesTablePointerLibPpi.c.
VOID ProcessNotify | ( | IN PEI_CORE_INSTANCE * | PrivateData, |
IN UINTN | NotifyType, | ||
IN INTN | InstallStartIndex, | ||
IN INTN | InstallStopIndex, | ||
IN INTN | NotifyStartIndex, | ||
IN INTN | NotifyStopIndex | ||
) |
Process notifications.
PrivateData | PeiCore's private data structure |
NotifyType | Type of notify to fire. |
InstallStartIndex | Install Beginning index. |
InstallStopIndex | Install Ending index. |
NotifyStartIndex | Notify Beginning index. |
NotifyStopIndex | Notify Ending index. |
Definition at line 435 of file UnitTestPeiServicesTablePointerLibPpi.c.
EFI_STATUS EFIAPI UnitTestInstallPpi | ( | IN CONST EFI_PEI_SERVICES ** | PeiServices, |
IN CONST EFI_PEI_PPI_DESCRIPTOR * | PpiList | ||
) |
This function installs an interface in the PEI PPI database by GUID. The purpose of the service is to publish an interface that other parties can use to call additional PEIMs.
PeiServices | An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. |
PpiList | Pointer to a list of PEI PPI Descriptors. |
EFI_SUCCESS | if all PPIs in PpiList are successfully installed. |
EFI_INVALID_PARAMETER | if PpiList is NULL pointer if any PPI in PpiList is not valid |
EFI_OUT_OF_RESOURCES | if there is no more memory resource to install PPI |
Definition at line 133 of file UnitTestPeiServicesTablePointerLibPpi.c.
EFI_STATUS EFIAPI UnitTestLocatePpi | ( | IN CONST EFI_PEI_SERVICES ** | PeiServices, |
IN CONST EFI_GUID * | Guid, | ||
IN UINTN | Instance, | ||
IN OUT EFI_PEI_PPI_DESCRIPTOR ** | PpiDescriptor, | ||
IN OUT VOID ** | Ppi | ||
) |
Locate a given named PPI.
PeiServices | An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. |
Guid | Pointer to GUID of the PPI. |
Instance | Instance Number to discover. |
PpiDescriptor | Pointer to reference the found descriptor. If not NULL, returns a pointer to the descriptor (includes flags, etc) |
Ppi | Pointer to reference the found PPI |
EFI_SUCCESS | if the PPI is in the database |
EFI_NOT_FOUND | if the PPI is not in the database |
Definition at line 232 of file UnitTestPeiServicesTablePointerLibPpi.c.
EFI_STATUS EFIAPI UnitTestNotifyPpi | ( | IN CONST EFI_PEI_SERVICES ** | PeiServices, |
IN CONST EFI_PEI_NOTIFY_DESCRIPTOR * | NotifyList | ||
) |
This function installs a notification service to be called back when a given interface is installed or reinstalled. The purpose of the service is to publish an interface that other parties can use to call additional PPIs that may materialize later.
PeiServices | An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. |
NotifyList | Pointer to list of Descriptors to notify upon. |
EFI_SUCCESS | if successful |
EFI_OUT_OF_RESOURCES | if no space in the database |
EFI_INVALID_PARAMETER | if not a good descriptor |
Definition at line 414 of file UnitTestPeiServicesTablePointerLibPpi.c.
EFI_STATUS EFIAPI UnitTestReInstallPpi | ( | IN CONST EFI_PEI_SERVICES ** | PeiServices, |
IN CONST EFI_PEI_PPI_DESCRIPTOR * | OldPpi, | ||
IN CONST EFI_PEI_PPI_DESCRIPTOR * | NewPpi | ||
) |
This function reinstalls an interface in the PEI PPI database by GUID. The purpose of the service is to publish an interface that other parties can use to replace an interface of the same name in the protocol database with a different interface.
PeiServices | An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. |
OldPpi | Pointer to the old PEI PPI Descriptors. |
NewPpi | Pointer to the new PEI PPI Descriptors. |
EFI_SUCCESS | if the operation was successful |
EFI_INVALID_PARAMETER | if OldPpi or NewPpi is NULL |
EFI_INVALID_PARAMETER | if NewPpi is not valid |
EFI_NOT_FOUND | if the PPI was not in the database |
Definition at line 160 of file UnitTestPeiServicesTablePointerLibPpi.c.