xref: /kvmtool/x86/bios/int15.c (revision af7b08685968ff8f6ffdf5cac1ef067688bce8c6)
1677a2bf1SPekka Enberg #include "kvm/bios.h"
2677a2bf1SPekka Enberg 
3677a2bf1SPekka Enberg #include "kvm/e820.h"
4677a2bf1SPekka Enberg 
5*0e753db4SPekka Enberg #include <asm/processor-flags.h>
6*0e753db4SPekka Enberg 
int15_handler(struct biosregs * regs)7677a2bf1SPekka Enberg bioscall void int15_handler(struct biosregs *regs)
8677a2bf1SPekka Enberg {
9677a2bf1SPekka Enberg 	switch (regs->eax) {
10677a2bf1SPekka Enberg 	case 0xe820:
11677a2bf1SPekka Enberg 		e820_query_map(regs);
12677a2bf1SPekka Enberg 		break;
13*0e753db4SPekka Enberg 	default:
14*0e753db4SPekka Enberg 		/* Set CF to indicate failure.  */
15*0e753db4SPekka Enberg 		regs->eflags	|= X86_EFLAGS_CF;
16*0e753db4SPekka Enberg 		break;
17677a2bf1SPekka Enberg 	}
18677a2bf1SPekka Enberg }
19