iPXE
nap.h File Reference

CPU sleeping. More...

#include <ipxe/api.h>
#include <config/nap.h>
#include <ipxe/null_nap.h>
#include <ipxe/efi/efi_nap.h>
#include <ipxe/linux/linux_nap.h>
#include <bits/nap.h>

Go to the source code of this file.

Macros

#define NAP_INLINE(_subsys, _api_func)
 Calculate static inline CPU sleeping API function name.
#define PROVIDE_NAP(_subsys, _api_func, _func)
 Provide an CPU sleeping API implementation.
#define PROVIDE_NAP_INLINE(_subsys, _api_func)
 Provide a static inline CPU sleeping API implementation.

Functions

 FILE_LICENCE (GPL2_OR_LATER_OR_UBDL)
 FILE_SECBOOT (PERMITTED)
void cpu_halt (void)
 Sleep until next CPU interrupt.
void cpu_nap (void)
 Sleep with interrupts enabled until next CPU interrupt.

Detailed Description

CPU sleeping.

Definition in file nap.h.

Macro Definition Documentation

◆ NAP_INLINE

#define NAP_INLINE ( _subsys,
_api_func )
Value:
SINGLE_API_INLINE ( NAP_PREFIX_ ## _subsys, _api_func )
#define SINGLE_API_INLINE(_prefix, _api_func)
Calculate static inline function name.
Definition api.h:45

Calculate static inline CPU sleeping API function name.

Parameters
_prefixSubsystem prefix
_api_funcAPI function
Return values
_subsys_funcSubsystem API function

Definition at line 23 of file nap.h.

23#define NAP_INLINE( _subsys, _api_func ) \
24 SINGLE_API_INLINE ( NAP_PREFIX_ ## _subsys, _api_func )

◆ PROVIDE_NAP

#define PROVIDE_NAP ( _subsys,
_api_func,
_func )
Value:
PROVIDE_SINGLE_API ( NAP_PREFIX_ ## _subsys, _api_func, _func )
#define PROVIDE_SINGLE_API(_prefix, _api_func, _func)
Provide an API implementation.
Definition api.h:55

Provide an CPU sleeping API implementation.

Parameters
_prefixSubsystem prefix
_api_funcAPI function
_funcImplementing function

Definition at line 33 of file nap.h.

33#define PROVIDE_NAP( _subsys, _api_func, _func ) \
34 PROVIDE_SINGLE_API ( NAP_PREFIX_ ## _subsys, _api_func, _func )

◆ PROVIDE_NAP_INLINE

#define PROVIDE_NAP_INLINE ( _subsys,
_api_func )
Value:
PROVIDE_SINGLE_API_INLINE ( NAP_PREFIX_ ## _subsys, _api_func )
#define PROVIDE_SINGLE_API_INLINE(_prefix, _api_func)
Provide a static inline API implementation.
Definition api.h:74

Provide a static inline CPU sleeping API implementation.

Parameters
_prefixSubsystem prefix
_api_funcAPI function

Definition at line 42 of file nap.h.

42#define PROVIDE_NAP_INLINE( _subsys, _api_func ) \
43 PROVIDE_SINGLE_API_INLINE ( NAP_PREFIX_ ## _subsys, _api_func )

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL )

◆ FILE_SECBOOT()

FILE_SECBOOT ( PERMITTED )

◆ cpu_halt()

void cpu_halt ( void )

Sleep until next CPU interrupt.

Referenced by efi_cpu_nap().

◆ cpu_nap()