summaryrefslogtreecommitdiffstats
path: root/src/arch/i386/interface/pcbios/bios_nap.c
blob: 7f4614666b43af30a2dea2087c28f700fdb6702b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <ipxe/nap.h>
#include <realmode.h>

FILE_LICENCE ( GPL2_OR_LATER );

/**
 * Save power by halting the CPU until the next interrupt
 *
 */
static void bios_cpu_nap ( void ) {
	__asm__ __volatile__ ( REAL_CODE ( "sti\n\t"
					   "hlt\n\t"
					   "cli\n\t" ) : : );
}

PROVIDE_NAP ( pcbios, cpu_nap, bios_cpu_nap );