Subversion Repositories HelenOS

Rev

Rev 1888 | Rev 2064 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1888 Rev 1942
Line 37... Line 37...
37
 
37
 
38
#include <typedefs.h>
38
#include <typedefs.h>
39
#include <arch/types.h>
39
#include <arch/types.h>
40
#include <arch/register.h>
40
#include <arch/register.h>
41
 
41
 
-
 
42
/** ia64 has 256 INRs. */
-
 
43
#define INR_COUNT   256
-
 
44
 
-
 
45
/*
42
#define IRQ_COUNT               257 /* 256 NOT suppotred IRQS*//* TODO */
46
 * We need to keep this just to compile.
43
#define IRQ_KBD                 256 /* One simulated interrupt for ski simulator keyboard*/
47
 * We might eventually move interrupt/ stuff
-
 
48
 * to genarch.
-
 
49
 */
-
 
50
#define IVT_ITEMS       0
-
 
51
#define IVT_FIRST       0
44
 
52
 
45
/** External Interrupt vectors. */
53
/** External Interrupt vectors. */
46
#define INTERRUPT_TIMER     0
54
#define INTERRUPT_TIMER     0
47
#define INTERRUPT_SPURIOUS  15
55
#define INTERRUPT_SPURIOUS  15
48
 
56
 
Line 124... Line 132...
124
    return istate->cr_iip;
132
    return istate->cr_iip;
125
}
133
}
126
 
134
 
127
static inline int istate_from_uspace(istate_t *istate)
135
static inline int istate_from_uspace(istate_t *istate)
128
{
136
{
129
    return (istate->cr_iip)<0xe000000000000000ULL;
137
    return (istate->cr_iip) < 0xe000000000000000ULL;
130
}
138
}
131
 
139
 
132
extern void *ivt;
140
extern void *ivt;
133
 
141
 
134
extern void general_exception(uint64_t vector, istate_t *istate);
142
extern void general_exception(uint64_t vector, istate_t *istate);
135
extern int break_instruction(uint64_t vector, istate_t *istate);
143
extern int break_instruction(uint64_t vector, istate_t *istate);
136
extern void universal_handler(uint64_t vector, istate_t *istate);
144
extern void universal_handler(uint64_t vector, istate_t *istate);
137
extern void nop_handler(uint64_t vector, istate_t *istate);
145
extern void nop_handler(uint64_t vector, istate_t *istate);
138
extern void external_interrupt(uint64_t vector, istate_t *istate);
146
extern void external_interrupt(uint64_t vector, istate_t *istate);
139
extern void virtual_interrupt(uint64_t irq, void *param);
-
 
140
extern void disabled_fp_register(uint64_t vector, istate_t *istate);
147
extern void disabled_fp_register(uint64_t vector, istate_t *istate);
141
 
148
 
142
#endif
149
#endif
143
 
150
 
144
/** @}
151
/** @}