/** @file
Reset scheduling library services
Copyright (c) 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef _SI_SCHEDULE_RESET_LIB_H_
#define _SI_SCHEDULE_RESET_LIB_H_
#include
#include
/**
This function updates the reset information in SiScheduleResetHob
@param[in] ResetType UEFI defined reset type.
@param[in] ResetData Optional element used to introduce a platform specific reset.
The exact type of the reset is defined by the EFI_GUID that follows
the Null-terminated Unicode string.
**/
VOID
SiScheduleResetSetType (
IN EFI_RESET_TYPE ResetType,
IN PCH_RESET_DATA *ResetData OPTIONAL
);
/**
This function returns TRUE or FALSE depending on whether a reset is required based on SiScheduleResetHob
@retval BOOLEAN The function returns FALSE if no reset is required
**/
BOOLEAN
SiScheduleResetIsRequired (
VOID
);
/**
This function performs reset based on SiScheduleResetHob
@retval BOOLEAN The function returns FALSE if no reset is required
**/
BOOLEAN
SiScheduleResetPerformReset (
VOID
);
#endif //_SI_SCHEDULE_RESET_LIB_H_