Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / ipxe / src / arch / i386 / include / biosint.h
1 #ifndef BIOSINT_H
2 #define BIOSINT_H
3
4 /**
5  * @file BIOS interrupts
6  *
7  */
8
9 FILE_LICENCE ( GPL2_OR_LATER );
10
11 #include <realmode.h>
12
13 struct segoff;
14
15 /**
16  * Hooked interrupt count
17  *
18  * At exit, after unhooking all possible interrupts, this counter
19  * should be examined.  If it is non-zero, it means that we failed to
20  * unhook at least one interrupt vector, and so must not free up the
21  * memory we are using.  (Note that this also implies that we should
22  * re-hook INT 15 in order to hide ourselves from the memory map).
23  */
24 extern uint16_t __text16 ( hooked_bios_interrupts );
25 #define hooked_bios_interrupts __use_text16 ( hooked_bios_interrupts )
26
27 extern void hook_bios_interrupt ( unsigned int interrupt, unsigned int handler,
28                                   struct segoff *chain_vector );
29 extern int unhook_bios_interrupt ( unsigned int interrupt,
30                                    unsigned int handler,
31                                    struct segoff *chain_vector );
32
33 #endif /* BIOSINT_H */