Subversion Repositories HelenOS-historic

Rev

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

Rev 501 Rev 512
Line 112... Line 112...
112
#define IOAPICID    0x00
112
#define IOAPICID    0x00
113
#define IOAPICVER   0x01
113
#define IOAPICVER   0x01
114
#define IOAPICARB   0x02
114
#define IOAPICARB   0x02
115
#define IOREDTBL    0x10
115
#define IOREDTBL    0x10
116
 
116
 
-
 
117
/** Delivery modes. */
-
 
118
#define DELMOD_FIXED    0x0
-
 
119
#define DELMOD_LOWPRI   0x1
-
 
120
#define DELMOD_SMI  0x2
-
 
121
/* 0x3 reserved */
-
 
122
#define DELMOD_NMI  0x4
-
 
123
#define DELMOD_INIT 0x5
-
 
124
/* 0x6 reserved */
-
 
125
#define DELMOD_EXTINT   0x7
-
 
126
 
-
 
127
/** Destination modes. */
-
 
128
#define DESTMOD_PHYS    0x0
-
 
129
#define DESTMOD_LOGIC   0x1
-
 
130
 
-
 
131
/** Trigger Modes. */
-
 
132
#define TRIGMOD_EDGE    0x0
-
 
133
#define TRIGMOD_LEVEL   0x1
-
 
134
 
-
 
135
/** Interrupt Input Pin Polarities. */
-
 
136
#define POLARITY_HIGH   0x0
-
 
137
#define POLARITY_LOW    0x1
-
 
138
 
-
 
139
/** I/O Redirection Register. */
-
 
140
struct io_redirection_reg {
-
 
141
    union {
-
 
142
        __u32 lo;
-
 
143
        struct {
-
 
144
            unsigned intvec : 8;        /**< Interrupt Vector. */
-
 
145
            unsigned delmod : 3;        /**< Delivery Mode. */
-
 
146
            unsigned destmod : 1;       /**< Destination mode. */
-
 
147
            unsigned delivs : 1;        /**< Delivery status (RO). */
-
 
148
            unsigned intpol : 1;        /**< Interrupt Input Pin Polarity. */
-
 
149
            unsigned irr : 1;       /**< Remote IRR (RO). */
-
 
150
            unsigned trigger_mode : 1;  /**< Trigger Mode. */
-
 
151
            unsigned masked : 1;        /**< Interrupt Mask. */
-
 
152
            unsigned : 15;          /**< Reserved. */
-
 
153
        };
-
 
154
    };
-
 
155
    union {
-
 
156
        __u32 hi;
-
 
157
        struct {
-
 
158
            unsigned : 24;          /**< Reserved. */
-
 
159
            unsigned dest : 8;      /**< Destination Field. */
-
 
160
        };
-
 
161
    };
-
 
162
   
-
 
163
} __attribute__ ((packed));
-
 
164
 
-
 
165
typedef struct io_redirection_reg io_redirection_reg_t;
117
 
166
 
118
extern volatile __u32 *l_apic;
167
extern volatile __u32 *l_apic;
119
extern volatile __u32 *io_apic;
168
extern volatile __u32 *io_apic;
120
 
169
 
121
extern __u32 apic_id_mask;
170
extern __u32 apic_id_mask;