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