diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2005-10-28 15:35:50 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-10-28 16:39:19 +1000 |
commit | 007e8f51b26ae7b6a17651af5a0f01ab6491cdca (patch) | |
tree | 916b72b8bdb4ffde07cf9ee05571b529cd9724b6 /arch/powerpc/platforms/pseries/xics.h | |
parent | 22b280324acbfd1a1f2374055d9bb39e7069e2bf (diff) | |
download | linux-007e8f51b26ae7b6a17651af5a0f01ab6491cdca.tar.gz linux-007e8f51b26ae7b6a17651af5a0f01ab6491cdca.tar.bz2 linux-007e8f51b26ae7b6a17651af5a0f01ab6491cdca.zip |
[PATCH] powerpc: Move xics.[ch] into platforms/pseries
This patch moves the XICS interrupt controller code into the
platforms/pseries directory, since it only appears on pSeries
machines. If it ever appears on some other machine we can move it to
sysdev, although xics.c itself will need a bunch of changes in that
case to remove pSeries specific assumptions.
Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/pseries/xics.h')
-rw-r--r-- | arch/powerpc/platforms/pseries/xics.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/pseries/xics.h b/arch/powerpc/platforms/pseries/xics.h new file mode 100644 index 000000000000..e14c70868f1d --- /dev/null +++ b/arch/powerpc/platforms/pseries/xics.h @@ -0,0 +1,34 @@ +/* + * arch/powerpc/platforms/pseries/xics.h + * + * Copyright 2000 IBM Corporation. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +#ifndef _POWERPC_KERNEL_XICS_H +#define _POWERPC_KERNEL_XICS_H + +#include <linux/cache.h> + +void xics_init_IRQ(void); +int xics_get_irq(struct pt_regs *); +void xics_setup_cpu(void); +void xics_teardown_cpu(int secondary); +void xics_cause_IPI(int cpu); +void xics_request_IPIs(void); +void xics_migrate_irqs_away(void); + +/* first argument is ignored for now*/ +void pSeriesLP_cppr_info(int n_cpu, u8 value); + +struct xics_ipi_struct { + volatile unsigned long value; +} ____cacheline_aligned; + +extern struct xics_ipi_struct xics_ipi_message[NR_CPUS] __cacheline_aligned; + +#endif /* _POWERPC_KERNEL_XICS_H */ |