Subversion Repositories HelenOS

Rev

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

Rev 576 Rev 672
Line 92... Line 92...
92
#define DELIVS_PENDING  0x1
92
#define DELIVS_PENDING  0x1
93
 
93
 
94
/** Destination masks. */
94
/** Destination masks. */
95
#define DEST_ALL    0xff
95
#define DEST_ALL    0xff
96
 
96
 
-
 
97
/** Dest format models. */
-
 
98
#define MODEL_FLAT  0xf
-
 
99
#define MODEL_CLUSTER   0x0
-
 
100
 
97
/** Interrupt Command Register. */
101
/** Interrupt Command Register. */
98
#define ICRlo       (0x300/sizeof(__u32))
102
#define ICRlo       (0x300/sizeof(__u32))
99
#define ICRhi       (0x310/sizeof(__u32))
103
#define ICRhi       (0x310/sizeof(__u32))
100
struct icr {
104
struct icr {
101
    union {
105
    union {
Line 245... Line 249...
245
#define LAVR_Mask   0xff
249
#define LAVR_Mask   0xff
246
#define is_local_apic(x)    (((x)&LAVR_Mask&0xf0)==0x1)
250
#define is_local_apic(x)    (((x)&LAVR_Mask&0xf0)==0x1)
247
#define is_82489DX_apic(x)  ((((x)&LAVR_Mask&0xf0)==0x0))
251
#define is_82489DX_apic(x)  ((((x)&LAVR_Mask&0xf0)==0x0))
248
#define is_local_xapic(x)   (((x)&LAVR_Mask)==0x14)
252
#define is_local_xapic(x)   (((x)&LAVR_Mask)==0x14)
249
 
253
 
-
 
254
/** Logical Destination Register. */
-
 
255
#define  LDR        (0x0d0/sizeof(__u32))
-
 
256
union ldr {
-
 
257
    __u32 value;
-
 
258
    struct {
-
 
259
        unsigned : 24;      /**< Reserver. */
-
 
260
        __u8 id;        /**< Logical APIC ID. */
-
 
261
    } __attribute__ ((packed));
-
 
262
};
-
 
263
typedef union ldr ldr_t;
-
 
264
 
-
 
265
/** Destination Format Register. */
-
 
266
#define DFR     (0x0e0/sizeof(__u32))
-
 
267
union dfr {
-
 
268
    __u32 value;
-
 
269
    struct {
-
 
270
        unsigned : 28;      /**< Reserved, all ones. */
-
 
271
        unsigned model : 4; /**< Model. */
-
 
272
    } __attribute__ ((packed));
-
 
273
};
-
 
274
typedef union dfr dfr_t;
-
 
275
 
250
/* IO APIC */
276
/* IO APIC */
251
#define IOREGSEL    (0x00/sizeof(__u32))
277
#define IOREGSEL    (0x00/sizeof(__u32))
252
#define IOWIN       (0x10/sizeof(__u32))
278
#define IOWIN       (0x10/sizeof(__u32))
253
 
279
 
254
#define IOAPICID    0x00
280
#define IOAPICID    0x00