1092af55d7071a46f49fe11bbd501d2015496221
[linux-2.6.git] / include / asm-ppc64 / xics.h
1 /* 
2  * arch/ppc64/kernel/xics.h
3  *
4  * Copyright 2000 IBM Corporation.
5  *
6  *  This program is free software; you can redistribute it and/or
7  *  modify it under the terms of the GNU General Public License
8  *  as published by the Free Software Foundation; either version
9  *  2 of the License, or (at your option) any later version.
10  */
11
12 #ifndef _PPC64_KERNEL_XICS_H
13 #define _PPC64_KERNEL_XICS_H
14
15 #include <linux/cache.h>
16
17 void xics_init_IRQ(void);
18 int xics_get_irq(struct pt_regs *);
19 void xics_setup_cpu(void);
20 void xics_teardown_cpu(int secondary);
21 void xics_cause_IPI(int cpu);
22 void xics_request_IPIs(void);
23 void xics_migrate_irqs_away(void);
24
25 /* first argument is ignored for now*/
26 void pSeriesLP_cppr_info(int n_cpu, u8 value);
27
28 struct xics_ipi_struct {
29         volatile unsigned long value;
30 } ____cacheline_aligned;
31
32 extern struct xics_ipi_struct xics_ipi_message[NR_CPUS] __cacheline_aligned;
33
34 #endif /* _PPC64_KERNEL_XICS_H */