aboutsummaryrefslogtreecommitdiffstats
path: root/include/acpi
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2010-10-25 02:10:36 -0400
committerLen Brown <len.brown@intel.com>2010-10-25 02:10:36 -0400
commitaca209e5e654951a3a90f5aaa8e04e0c470993b4 (patch)
tree5de472175d8edcbdf7a98022af7bf650bde761e9 /include/acpi
parentf6f94e2ab1b33f0082ac22d71f66385a60d8157f (diff)
parent8df3fc981dc12d9fdcaef4100a2193b605024d7a (diff)
Merge branch 'acpica' into release
Conflicts: drivers/acpi/acpica/aclocal.h Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi')
-rw-r--r--include/acpi/acpiosxf.h12
-rw-r--r--include/acpi/acpixf.h9
-rw-r--r--include/acpi/actypes.h30
-rw-r--r--include/acpi/platform/acenv.h6
-rw-r--r--include/acpi/platform/acgcc.h2
-rw-r--r--include/acpi/platform/aclinux.h7
6 files changed, 33 insertions, 33 deletions
diff --git a/include/acpi/acpiosxf.h b/include/acpi/acpiosxf.h
index 29bf945143e8..43027432a055 100644
--- a/include/acpi/acpiosxf.h
+++ b/include/acpi/acpiosxf.h
@@ -223,25 +223,15 @@ acpi_os_write_memory(acpi_physical_address address, u32 value, u32 width);
223 */ 223 */
224acpi_status 224acpi_status
225acpi_os_read_pci_configuration(struct acpi_pci_id *pci_id, 225acpi_os_read_pci_configuration(struct acpi_pci_id *pci_id,
226 u32 reg, u32 *value, u32 width); 226 u32 reg, u64 *value, u32 width);
227 227
228acpi_status 228acpi_status
229acpi_os_write_pci_configuration(struct acpi_pci_id *pci_id, 229acpi_os_write_pci_configuration(struct acpi_pci_id *pci_id,
230 u32 reg, u64 value, u32 width); 230 u32 reg, u64 value, u32 width);
231 231
232/* 232/*
233 * Interim function needed for PCI IRQ routing
234 */
235void
236acpi_os_derive_pci_id(acpi_handle device,
237 acpi_handle region, struct acpi_pci_id **pci_id);
238
239/*
240 * Miscellaneous 233 * Miscellaneous
241 */ 234 */
242acpi_status acpi_os_validate_interface(char *interface);
243acpi_status acpi_osi_invalidate(char* interface);
244
245acpi_status 235acpi_status
246acpi_os_validate_address(u8 space_id, acpi_physical_address address, 236acpi_os_validate_address(u8 space_id, acpi_physical_address address,
247 acpi_size length, char *name); 237 acpi_size length, char *name);
diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h
index 984cdc62e30b..7db647c96283 100644
--- a/include/acpi/acpixf.h
+++ b/include/acpi/acpixf.h
@@ -47,7 +47,7 @@
47 47
48/* Current ACPICA subsystem version in YYYYMMDD format */ 48/* Current ACPICA subsystem version in YYYYMMDD format */
49 49
50#define ACPI_CA_VERSION 0x20100702 50#define ACPI_CA_VERSION 0x20101013
51 51
52#include "actypes.h" 52#include "actypes.h"
53#include "actbl.h" 53#include "actbl.h"
@@ -72,6 +72,7 @@ extern u8 acpi_gbl_truncate_io_addresses;
72 72
73extern u32 acpi_current_gpe_count; 73extern u32 acpi_current_gpe_count;
74extern struct acpi_table_fadt acpi_gbl_FADT; 74extern struct acpi_table_fadt acpi_gbl_FADT;
75extern u8 acpi_gbl_system_awake_and_running;
75 76
76extern u32 acpi_rsdt_forced; 77extern u32 acpi_rsdt_forced;
77/* 78/*
@@ -105,6 +106,10 @@ const char *acpi_format_exception(acpi_status exception);
105 106
106acpi_status acpi_purge_cached_objects(void); 107acpi_status acpi_purge_cached_objects(void);
107 108
109acpi_status acpi_install_interface(acpi_string interface_name);
110
111acpi_status acpi_remove_interface(acpi_string interface_name);
112
108/* 113/*
109 * ACPI Memory management 114 * ACPI Memory management
110 */ 115 */
@@ -263,6 +268,8 @@ acpi_remove_gpe_handler(acpi_handle gpe_device,
263acpi_status acpi_install_exception_handler(acpi_exception_handler handler); 268acpi_status acpi_install_exception_handler(acpi_exception_handler handler);
264#endif 269#endif
265 270
271acpi_status acpi_install_interface_handler(acpi_interface_handler handler);
272
266/* 273/*
267 * Event interfaces 274 * Event interfaces
268 */ 275 */
diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h
index 5db8f472fec9..2b134b691e34 100644
--- a/include/acpi/actypes.h
+++ b/include/acpi/actypes.h
@@ -115,7 +115,6 @@
115 * 115 *
116 * ACPI_SIZE 16/32/64-bit unsigned value 116 * ACPI_SIZE 16/32/64-bit unsigned value
117 * ACPI_NATIVE_INT 16/32/64-bit signed value 117 * ACPI_NATIVE_INT 16/32/64-bit signed value
118 *
119 */ 118 */
120 119
121/******************************************************************************* 120/*******************************************************************************
@@ -132,6 +131,16 @@ typedef COMPILER_DEPENDENT_INT64 INT64;
132 131
133/*! [End] no source code translation !*/ 132/*! [End] no source code translation !*/
134 133
134/*
135 * Value returned by acpi_os_get_thread_id. There is no standard "thread_id"
136 * across operating systems or even the various UNIX systems. Since ACPICA
137 * only needs the thread ID as a unique thread identifier, we use a u64
138 * as the only common data type - it will accommodate any type of pointer or
139 * any type of integer. It is up to the host-dependent OSL to cast the
140 * native thread ID type to a u64 (in acpi_os_get_thread_id).
141 */
142#define acpi_thread_id u64
143
135/******************************************************************************* 144/*******************************************************************************
136 * 145 *
137 * Types specific to 64-bit targets 146 * Types specific to 64-bit targets
@@ -211,12 +220,6 @@ typedef u32 acpi_physical_address;
211 * 220 *
212 ******************************************************************************/ 221 ******************************************************************************/
213 222
214/* Value returned by acpi_os_get_thread_id */
215
216#ifndef acpi_thread_id
217#define acpi_thread_id acpi_size
218#endif
219
220/* Flags for acpi_os_acquire_lock/acpi_os_release_lock */ 223/* Flags for acpi_os_acquire_lock/acpi_os_release_lock */
221 224
222#ifndef acpi_cpu_flags 225#ifndef acpi_cpu_flags
@@ -375,16 +378,6 @@ typedef void *acpi_handle; /* Actually a ptr to a NS Node */
375typedef u8 acpi_owner_id; 378typedef u8 acpi_owner_id;
376#define ACPI_OWNER_ID_MAX 0xFF 379#define ACPI_OWNER_ID_MAX 0xFF
377 380
378struct uint64_struct {
379 u32 lo;
380 u32 hi;
381};
382
383union uint64_overlay {
384 u64 full;
385 struct uint64_struct part;
386};
387
388#define ACPI_INTEGER_BIT_SIZE 64 381#define ACPI_INTEGER_BIT_SIZE 64
389#define ACPI_MAX_DECIMAL_DIGITS 20 /* 2^64 = 18,446,744,073,709,551,616 */ 382#define ACPI_MAX_DECIMAL_DIGITS 20 /* 2^64 = 18,446,744,073,709,551,616 */
390 383
@@ -950,6 +943,9 @@ acpi_status(*acpi_walk_callback) (acpi_handle object,
950 u32 nesting_level, 943 u32 nesting_level,
951 void *context, void **return_value); 944 void *context, void **return_value);
952 945
946typedef
947u32 (*acpi_interface_handler) (acpi_string interface_name, u32 supported);
948
953/* Interrupt handler return values */ 949/* Interrupt handler return values */
954 950
955#define ACPI_INTERRUPT_NOT_HANDLED 0x00 951#define ACPI_INTERRUPT_NOT_HANDLED 0x00
diff --git a/include/acpi/platform/acenv.h b/include/acpi/platform/acenv.h
index c05aeba9e8f0..a3e334ab1119 100644
--- a/include/acpi/platform/acenv.h
+++ b/include/acpi/platform/acenv.h
@@ -193,6 +193,12 @@
193#define ACPI_MUTEX_TYPE ACPI_BINARY_SEMAPHORE 193#define ACPI_MUTEX_TYPE ACPI_BINARY_SEMAPHORE
194#endif 194#endif
195 195
196/* "inline" keywords - configurable since inline is not standardized */
197
198#ifndef ACPI_INLINE
199#define ACPI_INLINE
200#endif
201
196/* 202/*
197 * Debugger threading model 203 * Debugger threading model
198 * Use single threaded if the entire subsystem is contained in an application 204 * Use single threaded if the entire subsystem is contained in an application
diff --git a/include/acpi/platform/acgcc.h b/include/acpi/platform/acgcc.h
index 0cd53e3cd1a3..5dcb9537343c 100644
--- a/include/acpi/platform/acgcc.h
+++ b/include/acpi/platform/acgcc.h
@@ -44,6 +44,8 @@
44#ifndef __ACGCC_H__ 44#ifndef __ACGCC_H__
45#define __ACGCC_H__ 45#define __ACGCC_H__
46 46
47#define ACPI_INLINE __inline__
48
47/* Function name is used for debug output. Non-ANSI, compiler-dependent */ 49/* Function name is used for debug output. Non-ANSI, compiler-dependent */
48 50
49#define ACPI_GET_FUNCTION_NAME __func__ 51#define ACPI_GET_FUNCTION_NAME __func__
diff --git a/include/acpi/platform/aclinux.h b/include/acpi/platform/aclinux.h
index 103f08aca764..572189e37133 100644
--- a/include/acpi/platform/aclinux.h
+++ b/include/acpi/platform/aclinux.h
@@ -75,7 +75,6 @@
75#define acpi_cache_t struct kmem_cache 75#define acpi_cache_t struct kmem_cache
76#define acpi_spinlock spinlock_t * 76#define acpi_spinlock spinlock_t *
77#define acpi_cpu_flags unsigned long 77#define acpi_cpu_flags unsigned long
78#define acpi_thread_id struct task_struct *
79 78
80#else /* !__KERNEL__ */ 79#else /* !__KERNEL__ */
81 80
@@ -88,7 +87,7 @@
88/* Host-dependent types and defines for user-space ACPICA */ 87/* Host-dependent types and defines for user-space ACPICA */
89 88
90#define ACPI_FLUSH_CPU_CACHE() 89#define ACPI_FLUSH_CPU_CACHE()
91#define acpi_thread_id pthread_t 90#define ACPI_CAST_PTHREAD_T(pthread) ((acpi_thread_id) (pthread))
92 91
93#if defined(__ia64__) || defined(__x86_64__) 92#if defined(__ia64__) || defined(__x86_64__)
94#define ACPI_MACHINE_WIDTH 64 93#define ACPI_MACHINE_WIDTH 64
@@ -113,12 +112,13 @@
113 112
114 113
115#ifdef __KERNEL__ 114#ifdef __KERNEL__
115#include <acpi/actypes.h>
116/* 116/*
117 * Overrides for in-kernel ACPICA 117 * Overrides for in-kernel ACPICA
118 */ 118 */
119static inline acpi_thread_id acpi_os_get_thread_id(void) 119static inline acpi_thread_id acpi_os_get_thread_id(void)
120{ 120{
121 return current; 121 return (acpi_thread_id)(unsigned long)current;
122} 122}
123 123
124/* 124/*
@@ -127,7 +127,6 @@ static inline acpi_thread_id acpi_os_get_thread_id(void)
127 * However, boot has (system_state != SYSTEM_RUNNING) 127 * However, boot has (system_state != SYSTEM_RUNNING)
128 * to quiet __might_sleep() in kmalloc() and resume does not. 128 * to quiet __might_sleep() in kmalloc() and resume does not.
129 */ 129 */
130#include <acpi/actypes.h>
131static inline void *acpi_os_allocate(acpi_size size) 130static inline void *acpi_os_allocate(acpi_size size)
132{ 131{
133 return kmalloc(size, irqs_disabled() ? GFP_ATOMIC : GFP_KERNEL); 132 return kmalloc(size, irqs_disabled() ? GFP_ATOMIC : GFP_KERNEL);