MdePkg: Update Delayed Dispatch PPI as per PI 1.8 Spec

Added WaitOnEvent() function to EFI_DELAYTED_DISPATCH_PPI.
Modified DispatchRegister() parameter list.

Cc: Felix Polyudov <felixp@ami.com>
Cc: Dhanaraj V <vdhanaraj@ami.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Signed-off-by: Sachin Ganesh <sachinganesh@ami.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
This commit is contained in:
Sachin Ganesh 2023-11-21 15:42:08 +05:30 committed by mergify[bot]
parent 09340de246
commit f3b0ee0cee
1 changed files with 23 additions and 1 deletions

View File

@ -49,6 +49,7 @@ This service is the single member function of the EFI_DELAYED_DISPATCH_PPI
@param This Pointer to the EFI_DELAYED_DISPATCH_PPI instance
@param Function Function to call back
@param Context Context data
@param UniqueId UniqueId
@param Delay Delay interval
@retval EFI_SUCCESS Function successfully loaded
@ -62,9 +63,29 @@ EFI_STATUS
IN EFI_DELAYED_DISPATCH_PPI *This,
IN EFI_DELAYED_DISPATCH_FUNCTION Function,
IN UINT64 Context,
IN EFI_GUID *UniqueId OPTIONAL,
OUT UINT32 Delay
);
/**
Function invoked by a PEIM to wait until all specified UniqueId events have been dispatched. The other events
will continue to dispatch while this process is being paused
@param This Pointer to the EFI_DELAYED_DISPATCH_PPI instance
@param UniqueId Delayed dispatch request ID the caller will wait on
@retval EFI_SUCCESS Function successfully invoked
@retval EFI_INVALID_PARAMETER One of the Arguments is not supported
**/
typedef
EFI_STATUS
(EFIAPI *EFI_DELAYED_DISPATCH_WAIT_ON_EVENT)(
IN EFI_DELAYED_DISPATCH_PPI *This,
IN EFI_GUID UniqueId
);
///
/// This PPI is a pointer to the Delayed Dispatch Service.
/// This service will be published by the Pei Foundation. The PEI Foundation
@ -72,7 +93,8 @@ EFI_STATUS
/// execution.
///
struct _EFI_DELAYED_DISPATCH_PPI {
EFI_DELAYED_DISPATCH_REGISTER Register;
EFI_DELAYED_DISPATCH_REGISTER Register;
EFI_DELAYED_DISPATCH_WAIT_ON_EVENT WaitOnEvent;
};
extern EFI_GUID gEfiPeiDelayedDispatchPpiGuid;