aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-ia64/acpi.h
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2008-08-01 13:13:32 -0400
committerTony Luck <tony.luck@intel.com>2008-08-01 13:21:21 -0400
commit7f30491ccd28627742e37899453ae20e3da8e18f (patch)
tree7291c0a26ed3a31acf9542857af3981d278f5de8 /include/asm-ia64/acpi.h
parent94ad374a0751f40d25e22e036c37f7263569d24c (diff)
[IA64] Move include/asm-ia64 to arch/ia64/include/asm
After moving the the include files there were a few clean-ups: 1) Some files used #include <asm-ia64/xyz.h>, changed to <asm/xyz.h> 2) Some comments alerted maintainers to look at various header files to make matching updates if certain code were to be changed. Updated these comments to use the new include paths. 3) Some header files mentioned their own names in initial comments. Just deleted these self references. Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'include/asm-ia64/acpi.h')
-rw-r--r--include/asm-ia64/acpi.h167
1 files changed, 0 insertions, 167 deletions
diff --git a/include/asm-ia64/acpi.h b/include/asm-ia64/acpi.h
deleted file mode 100644
index fcfad326f4c7..000000000000
--- a/include/asm-ia64/acpi.h
+++ /dev/null
@@ -1,167 +0,0 @@
1/*
2 * asm-ia64/acpi.h
3 *
4 * Copyright (C) 1999 VA Linux Systems
5 * Copyright (C) 1999 Walt Drummond <drummond@valinux.com>
6 * Copyright (C) 2000,2001 J.I. Lee <jung-ik.lee@intel.com>
7 * Copyright (C) 2001,2002 Paul Diefenbaugh <paul.s.diefenbaugh@intel.com>
8 *
9 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 *
25 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26 */
27
28#ifndef _ASM_ACPI_H
29#define _ASM_ACPI_H
30
31#ifdef __KERNEL__
32
33#include <acpi/pdc_intel.h>
34
35#include <linux/init.h>
36#include <linux/numa.h>
37#include <asm/system.h>
38#include <asm/numa.h>
39
40#define COMPILER_DEPENDENT_INT64 long
41#define COMPILER_DEPENDENT_UINT64 unsigned long
42
43/*
44 * Calling conventions:
45 *
46 * ACPI_SYSTEM_XFACE - Interfaces to host OS (handlers, threads)
47 * ACPI_EXTERNAL_XFACE - External ACPI interfaces
48 * ACPI_INTERNAL_XFACE - Internal ACPI interfaces
49 * ACPI_INTERNAL_VAR_XFACE - Internal variable-parameter list interfaces
50 */
51#define ACPI_SYSTEM_XFACE
52#define ACPI_EXTERNAL_XFACE
53#define ACPI_INTERNAL_XFACE
54#define ACPI_INTERNAL_VAR_XFACE
55
56/* Asm macros */
57
58#define ACPI_ASM_MACROS
59#define BREAKPOINT3
60#define ACPI_DISABLE_IRQS() local_irq_disable()
61#define ACPI_ENABLE_IRQS() local_irq_enable()
62#define ACPI_FLUSH_CPU_CACHE()
63
64static inline int
65ia64_acpi_acquire_global_lock (unsigned int *lock)
66{
67 unsigned int old, new, val;
68 do {
69 old = *lock;
70 new = (((old & ~0x3) + 2) + ((old >> 1) & 0x1));
71 val = ia64_cmpxchg4_acq(lock, new, old);
72 } while (unlikely (val != old));
73 return (new < 3) ? -1 : 0;
74}
75
76static inline int
77ia64_acpi_release_global_lock (unsigned int *lock)
78{
79 unsigned int old, new, val;
80 do {
81 old = *lock;
82 new = old & ~0x3;
83 val = ia64_cmpxchg4_acq(lock, new, old);
84 } while (unlikely (val != old));
85 return old & 0x1;
86}
87
88#define ACPI_ACQUIRE_GLOBAL_LOCK(facs, Acq) \
89 ((Acq) = ia64_acpi_acquire_global_lock(&facs->global_lock))
90
91#define ACPI_RELEASE_GLOBAL_LOCK(facs, Acq) \
92 ((Acq) = ia64_acpi_release_global_lock(&facs->global_lock))
93
94#define acpi_disabled 0 /* ACPI always enabled on IA64 */
95#define acpi_noirq 0 /* ACPI always enabled on IA64 */
96#define acpi_pci_disabled 0 /* ACPI PCI always enabled on IA64 */
97#define acpi_strict 1 /* no ACPI spec workarounds on IA64 */
98#define acpi_processor_cstate_check(x) (x) /* no idle limits on IA64 :) */
99static inline void disable_acpi(void) { }
100
101const char *acpi_get_sysname (void);
102int acpi_request_vector (u32 int_type);
103int acpi_gsi_to_irq (u32 gsi, unsigned int *irq);
104
105/* routines for saving/restoring kernel state */
106extern int acpi_save_state_mem(void);
107extern void acpi_restore_state_mem(void);
108extern unsigned long acpi_wakeup_address;
109
110/*
111 * Record the cpei override flag and current logical cpu. This is
112 * useful for CPU removal.
113 */
114extern unsigned int can_cpei_retarget(void);
115extern unsigned int is_cpu_cpei_target(unsigned int cpu);
116extern void set_cpei_target_cpu(unsigned int cpu);
117extern unsigned int get_cpei_target_cpu(void);
118extern void prefill_possible_map(void);
119#ifdef CONFIG_ACPI_HOTPLUG_CPU
120extern int additional_cpus;
121#else
122#define additional_cpus 0
123#endif
124
125#ifdef CONFIG_ACPI_NUMA
126#if MAX_NUMNODES > 256
127#define MAX_PXM_DOMAINS MAX_NUMNODES
128#else
129#define MAX_PXM_DOMAINS (256)
130#endif
131extern int __devinitdata pxm_to_nid_map[MAX_PXM_DOMAINS];
132extern int __initdata nid_to_pxm_map[MAX_NUMNODES];
133#endif
134
135#define acpi_unlazy_tlb(x)
136
137#ifdef CONFIG_ACPI_NUMA
138extern cpumask_t early_cpu_possible_map;
139#define for_each_possible_early_cpu(cpu) \
140 for_each_cpu_mask((cpu), early_cpu_possible_map)
141
142static inline void per_cpu_scan_finalize(int min_cpus, int reserve_cpus)
143{
144 int low_cpu, high_cpu;
145 int cpu;
146 int next_nid = 0;
147
148 low_cpu = cpus_weight(early_cpu_possible_map);
149
150 high_cpu = max(low_cpu, min_cpus);
151 high_cpu = min(high_cpu + reserve_cpus, NR_CPUS);
152
153 for (cpu = low_cpu; cpu < high_cpu; cpu++) {
154 cpu_set(cpu, early_cpu_possible_map);
155 if (node_cpuid[cpu].nid == NUMA_NO_NODE) {
156 node_cpuid[cpu].nid = next_nid;
157 next_nid++;
158 if (next_nid >= num_online_nodes())
159 next_nid = 0;
160 }
161 }
162}
163#endif /* CONFIG_ACPI_NUMA */
164
165#endif /*__KERNEL__*/
166
167#endif /*_ASM_ACPI_H*/