X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=misc%2Ftest_vm%2Finclude%2Fgeekos%2Fidt.h;fp=misc%2Ftest_vm%2Finclude%2Fgeekos%2Fidt.h;h=0000000000000000000000000000000000000000;hp=b88cf283fa6e8f73254a282be328fcee5d272fc7;hb=a70930549d1b741704dd7af4e6bb0e89f6f8a519;hpb=afb634a80f946634454a5d067a92aa600227bd93 diff --git a/misc/test_vm/include/geekos/idt.h b/misc/test_vm/include/geekos/idt.h deleted file mode 100644 index b88cf28..0000000 --- a/misc/test_vm/include/geekos/idt.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * GeekOS IDT initialization code - * Copyright (c) 2001, David H. Hovemeyer - * $Revision: 1.1 $ - * - * This is free software. You are permitted to use, - * redistribute, and modify it as specified in the file "COPYING". - */ - -#ifndef GEEKOS_IDT_H -#define GEEKOS_IDT_H - -#include - -/* - * We'll handle all possible interrupts. - */ -#define NUM_IDT_ENTRIES 256 - -/* - * Exceptions range from 0-17 - */ -#define FIRST_EXCEPTION 0 -#define NUM_EXCEPTIONS 18 - -/* - * External IRQs range from 32-47 - */ -#define FIRST_EXTERNAL_INT 32 -#define NUM_EXTERNAL_INTS 16 - -struct Interrupt_Gate { - ushort_t offsetLow; - ushort_t segmentSelector; - unsigned reserved : 5; - unsigned signature : 8; - unsigned dpl : 2; - unsigned present : 1; - ushort_t offsetHigh; -}; - -union IDT_Descriptor { - struct Interrupt_Gate ig; - /* - * In theory we could have members for trap gates - * and task gates if we wanted. - */ -}; - - - -void DumpIDT(); -void SerialDumpIDT(); - -void Init_IDT(void); -void Init_Interrupt_Gate(union IDT_Descriptor* desc, ulong_t addr, - int dpl); -void Install_Interrupt_Handler(int interrupt, Interrupt_Handler handler); - -/* - * This is defined in lowlevel.asm. - * The parameter should consist of 16 bit base, - * followed by 32 bit base address, describing the IDT. - */ -void Load_IDTR(ushort_t* limitAndBase); - -#endif /* GEEKOS_IDT_H */