mirror of
https://github.com/CloverHackyColor/CloverBootloader.git
synced 2024-11-27 12:15:19 +01:00
84 lines
1.6 KiB
C
84 lines
1.6 KiB
C
|
/** @file
|
||
|
Library class name: SmmLib
|
||
|
|
||
|
SMM Library Services that abstracts both S/W SMI generation and detection.
|
||
|
|
||
|
Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
|
||
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||
|
|
||
|
**/
|
||
|
|
||
|
#ifndef __SMM_LIB_H__
|
||
|
#define __SMM_LIB_H__
|
||
|
|
||
|
|
||
|
/**
|
||
|
Triggers an SMI at boot time.
|
||
|
|
||
|
This function triggers a software SMM interrupt at boot time.
|
||
|
|
||
|
**/
|
||
|
VOID
|
||
|
EFIAPI
|
||
|
TriggerBootServiceSoftwareSmi (
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
|
||
|
/**
|
||
|
Triggers an SMI at run time.
|
||
|
|
||
|
This function triggers a software SMM interrupt at run time.
|
||
|
|
||
|
**/
|
||
|
VOID
|
||
|
EFIAPI
|
||
|
TriggerRuntimeSoftwareSmi (
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
|
||
|
/**
|
||
|
Test if a boot time software SMI happened.
|
||
|
|
||
|
This function tests if a software SMM interrupt happened. If a software SMM interrupt happened and
|
||
|
it was triggered at boot time, it returns TRUE. Otherwise, it returns FALSE.
|
||
|
|
||
|
@retval TRUE A software SMI triggered at boot time happened.
|
||
|
@retval FLASE No software SMI happened, or the software SMI was triggered at run time.
|
||
|
|
||
|
**/
|
||
|
BOOLEAN
|
||
|
EFIAPI
|
||
|
IsBootServiceSoftwareSmi (
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
|
||
|
/**
|
||
|
Test if a run time software SMI happened.
|
||
|
|
||
|
This function tests if a software SMM interrupt happened. If a software SMM interrupt happened and
|
||
|
it was triggered at run time, it returns TRUE. Otherwise, it returns FALSE.
|
||
|
|
||
|
@retval TRUE A software SMI triggered at run time happened.
|
||
|
@retval FLASE No software SMI happened or the software SMI was triggered at boot time.
|
||
|
|
||
|
**/
|
||
|
BOOLEAN
|
||
|
EFIAPI
|
||
|
IsRuntimeSoftwareSmi (
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
/**
|
||
|
Clear APM SMI Status Bit; Set the EOS bit.
|
||
|
|
||
|
**/
|
||
|
VOID
|
||
|
EFIAPI
|
||
|
ClearSmi (
|
||
|
VOID
|
||
|
);
|
||
|
#endif
|