xref: /aosp_15_r20/prebuilts/build-tools/sysroots/i686-unknown-linux-musl/include/asm/vm86.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef _UAPI_ASM_X86_VM86_H
8*cda5da8dSAndroid Build Coastguard Worker #define _UAPI_ASM_X86_VM86_H
9*cda5da8dSAndroid Build Coastguard Worker #include <asm/processor-flags.h>
10*cda5da8dSAndroid Build Coastguard Worker #define BIOSSEG 0x0f000
11*cda5da8dSAndroid Build Coastguard Worker #define CPU_086 0
12*cda5da8dSAndroid Build Coastguard Worker #define CPU_186 1
13*cda5da8dSAndroid Build Coastguard Worker #define CPU_286 2
14*cda5da8dSAndroid Build Coastguard Worker #define CPU_386 3
15*cda5da8dSAndroid Build Coastguard Worker #define CPU_486 4
16*cda5da8dSAndroid Build Coastguard Worker #define CPU_586 5
17*cda5da8dSAndroid Build Coastguard Worker #define VM86_TYPE(retval) ((retval) & 0xff)
18*cda5da8dSAndroid Build Coastguard Worker #define VM86_ARG(retval) ((retval) >> 8)
19*cda5da8dSAndroid Build Coastguard Worker #define VM86_SIGNAL 0
20*cda5da8dSAndroid Build Coastguard Worker #define VM86_UNKNOWN 1
21*cda5da8dSAndroid Build Coastguard Worker #define VM86_INTx 2
22*cda5da8dSAndroid Build Coastguard Worker #define VM86_STI 3
23*cda5da8dSAndroid Build Coastguard Worker #define VM86_PICRETURN 4
24*cda5da8dSAndroid Build Coastguard Worker #define VM86_TRAP 6
25*cda5da8dSAndroid Build Coastguard Worker #define VM86_PLUS_INSTALL_CHECK 0
26*cda5da8dSAndroid Build Coastguard Worker #define VM86_ENTER 1
27*cda5da8dSAndroid Build Coastguard Worker #define VM86_ENTER_NO_BYPASS 2
28*cda5da8dSAndroid Build Coastguard Worker #define VM86_REQUEST_IRQ 3
29*cda5da8dSAndroid Build Coastguard Worker #define VM86_FREE_IRQ 4
30*cda5da8dSAndroid Build Coastguard Worker #define VM86_GET_IRQ_BITS 5
31*cda5da8dSAndroid Build Coastguard Worker #define VM86_GET_AND_RESET_IRQ 6
32*cda5da8dSAndroid Build Coastguard Worker struct vm86_regs {
33*cda5da8dSAndroid Build Coastguard Worker   long ebx;
34*cda5da8dSAndroid Build Coastguard Worker   long ecx;
35*cda5da8dSAndroid Build Coastguard Worker   long edx;
36*cda5da8dSAndroid Build Coastguard Worker   long esi;
37*cda5da8dSAndroid Build Coastguard Worker   long edi;
38*cda5da8dSAndroid Build Coastguard Worker   long ebp;
39*cda5da8dSAndroid Build Coastguard Worker   long eax;
40*cda5da8dSAndroid Build Coastguard Worker   long __null_ds;
41*cda5da8dSAndroid Build Coastguard Worker   long __null_es;
42*cda5da8dSAndroid Build Coastguard Worker   long __null_fs;
43*cda5da8dSAndroid Build Coastguard Worker   long __null_gs;
44*cda5da8dSAndroid Build Coastguard Worker   long orig_eax;
45*cda5da8dSAndroid Build Coastguard Worker   long eip;
46*cda5da8dSAndroid Build Coastguard Worker   unsigned short cs, __csh;
47*cda5da8dSAndroid Build Coastguard Worker   long eflags;
48*cda5da8dSAndroid Build Coastguard Worker   long esp;
49*cda5da8dSAndroid Build Coastguard Worker   unsigned short ss, __ssh;
50*cda5da8dSAndroid Build Coastguard Worker   unsigned short es, __esh;
51*cda5da8dSAndroid Build Coastguard Worker   unsigned short ds, __dsh;
52*cda5da8dSAndroid Build Coastguard Worker   unsigned short fs, __fsh;
53*cda5da8dSAndroid Build Coastguard Worker   unsigned short gs, __gsh;
54*cda5da8dSAndroid Build Coastguard Worker };
55*cda5da8dSAndroid Build Coastguard Worker struct revectored_struct {
56*cda5da8dSAndroid Build Coastguard Worker   unsigned long __map[8];
57*cda5da8dSAndroid Build Coastguard Worker };
58*cda5da8dSAndroid Build Coastguard Worker struct vm86_struct {
59*cda5da8dSAndroid Build Coastguard Worker   struct vm86_regs regs;
60*cda5da8dSAndroid Build Coastguard Worker   unsigned long flags;
61*cda5da8dSAndroid Build Coastguard Worker   unsigned long screen_bitmap;
62*cda5da8dSAndroid Build Coastguard Worker   unsigned long cpu_type;
63*cda5da8dSAndroid Build Coastguard Worker   struct revectored_struct int_revectored;
64*cda5da8dSAndroid Build Coastguard Worker   struct revectored_struct int21_revectored;
65*cda5da8dSAndroid Build Coastguard Worker };
66*cda5da8dSAndroid Build Coastguard Worker #define VM86_SCREEN_BITMAP 0x0001
67*cda5da8dSAndroid Build Coastguard Worker struct vm86plus_info_struct {
68*cda5da8dSAndroid Build Coastguard Worker   unsigned long force_return_for_pic : 1;
69*cda5da8dSAndroid Build Coastguard Worker   unsigned long vm86dbg_active : 1;
70*cda5da8dSAndroid Build Coastguard Worker   unsigned long vm86dbg_TFpendig : 1;
71*cda5da8dSAndroid Build Coastguard Worker   unsigned long unused : 28;
72*cda5da8dSAndroid Build Coastguard Worker   unsigned long is_vm86pus : 1;
73*cda5da8dSAndroid Build Coastguard Worker   unsigned char vm86dbg_intxxtab[32];
74*cda5da8dSAndroid Build Coastguard Worker };
75*cda5da8dSAndroid Build Coastguard Worker struct vm86plus_struct {
76*cda5da8dSAndroid Build Coastguard Worker   struct vm86_regs regs;
77*cda5da8dSAndroid Build Coastguard Worker   unsigned long flags;
78*cda5da8dSAndroid Build Coastguard Worker   unsigned long screen_bitmap;
79*cda5da8dSAndroid Build Coastguard Worker   unsigned long cpu_type;
80*cda5da8dSAndroid Build Coastguard Worker   struct revectored_struct int_revectored;
81*cda5da8dSAndroid Build Coastguard Worker   struct revectored_struct int21_revectored;
82*cda5da8dSAndroid Build Coastguard Worker   struct vm86plus_info_struct vm86plus;
83*cda5da8dSAndroid Build Coastguard Worker };
84*cda5da8dSAndroid Build Coastguard Worker #endif
85