1 | /* |
2 | * This file is subject to the terms and conditions of the GNU General Public |
3 | * License. See the file "COPYING" in the main directory of this archive |
4 | * for more details. |
5 | * |
6 | * SGI UV IRQ definitions |
7 | * |
8 | * Copyright (C) 2008 Silicon Graphics, Inc. All rights reserved. |
9 | */ |
10 | |
11 | #ifndef _ASM_X86_UV_UV_IRQ_H |
12 | #define _ASM_X86_UV_UV_IRQ_H |
13 | |
14 | /* If a generic version of this structure gets defined, eliminate this one. */ |
15 | struct uv_IO_APIC_route_entry { |
16 | __u64 vector : 8, |
17 | delivery_mode : 3, |
18 | dest_mode : 1, |
19 | delivery_status : 1, |
20 | polarity : 1, |
21 | __reserved_1 : 1, |
22 | trigger : 1, |
23 | mask : 1, |
24 | __reserved_2 : 15, |
25 | dest : 32; |
26 | }; |
27 | |
28 | enum { |
29 | UV_AFFINITY_ALL, |
30 | UV_AFFINITY_NODE, |
31 | UV_AFFINITY_CPU |
32 | }; |
33 | |
34 | extern int uv_irq_2_mmr_info(int, unsigned long *, int *); |
35 | extern int uv_setup_irq(char *, int, int, unsigned long, int); |
36 | extern void uv_teardown_irq(unsigned int); |
37 | |
38 | #endif /* _ASM_X86_UV_UV_IRQ_H */ |
39 | |