diff options
Diffstat (limited to 'include/asm-x86/genapic_64.h')
-rw-r--r-- | include/asm-x86/genapic_64.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/include/asm-x86/genapic_64.h b/include/asm-x86/genapic_64.h new file mode 100644 index 000000000000..d7e516ccbaa4 --- /dev/null +++ b/include/asm-x86/genapic_64.h | |||
@@ -0,0 +1,37 @@ | |||
1 | #ifndef _ASM_GENAPIC_H | ||
2 | #define _ASM_GENAPIC_H 1 | ||
3 | |||
4 | /* | ||
5 | * Copyright 2004 James Cleverdon, IBM. | ||
6 | * Subject to the GNU Public License, v.2 | ||
7 | * | ||
8 | * Generic APIC sub-arch data struct. | ||
9 | * | ||
10 | * Hacked for x86-64 by James Cleverdon from i386 architecture code by | ||
11 | * Martin Bligh, Andi Kleen, James Bottomley, John Stultz, and | ||
12 | * James Cleverdon. | ||
13 | */ | ||
14 | |||
15 | struct genapic { | ||
16 | char *name; | ||
17 | u32 int_delivery_mode; | ||
18 | u32 int_dest_mode; | ||
19 | int (*apic_id_registered)(void); | ||
20 | cpumask_t (*target_cpus)(void); | ||
21 | cpumask_t (*vector_allocation_domain)(int cpu); | ||
22 | void (*init_apic_ldr)(void); | ||
23 | /* ipi */ | ||
24 | void (*send_IPI_mask)(cpumask_t mask, int vector); | ||
25 | void (*send_IPI_allbutself)(int vector); | ||
26 | void (*send_IPI_all)(int vector); | ||
27 | /* */ | ||
28 | unsigned int (*cpu_mask_to_apicid)(cpumask_t cpumask); | ||
29 | unsigned int (*phys_pkg_id)(int index_msb); | ||
30 | }; | ||
31 | |||
32 | extern struct genapic *genapic; | ||
33 | |||
34 | extern struct genapic apic_flat; | ||
35 | extern struct genapic apic_physflat; | ||
36 | |||
37 | #endif | ||