iPXE
nap.h
Go to the documentation of this file.
1 #ifndef _BITS_NAP_H
2 #define _BITS_NAP_H
3 
4 /** @file
5  *
6  * x86-specific CPU sleeping API implementations
7  *
8  */
9 
10 FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
11 
12 #include <ipxe/bios_nap.h>
13 
14 /**
15  * Sleep until next CPU interrupt
16  *
17  */
18 static inline __attribute__ (( always_inline )) void cpu_halt ( void ) {
19  __asm__ __volatile__ ( "hlt" );
20 }
21 
22 #endif /* _BITS_NAP_H */
static __attribute__((always_inline)) void cpu_halt(void)
Sleep until next CPU interrupt.
Definition: nap.h:18
void cpu_halt(void)
Sleep until next CPU interrupt.
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
BIOS CPU sleeping.
__asm__ __volatile__("call *%9" :"=a"(result), "=c"(discard_ecx), "=d"(discard_edx) :"d"(0), "a"(code), "b"(0), "c"(in_phys), "D"(0), "S"(out_phys), "m"(hypercall))
__asm__(".section \".rodata\", \"a\", " PROGBITS "\n\t" "\nprivate_key_data:\n\t" ".size private_key_data, ( . - private_key_data )\n\t" ".equ private_key_len, ( . - private_key_data )\n\t" ".previous\n\t")