aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/acpi/acconfig.h12
-rw-r--r--include/acpi/acdisasm.h12
-rw-r--r--include/acpi/acdispat.h4
-rw-r--r--include/acpi/acexcep.h6
-rw-r--r--include/acpi/acglobal.h7
-rw-r--r--include/acpi/aclocal.h9
-rw-r--r--include/acpi/acmacros.h12
-rw-r--r--include/acpi/acobject.h3
-rw-r--r--include/acpi/acoutput.h8
-rw-r--r--include/acpi/acpiosxf.h7
-rw-r--r--include/acpi/actypes.h23
-rw-r--r--include/acpi/acutils.h38
-rw-r--r--include/acpi/platform/acenv.h25
13 files changed, 96 insertions, 70 deletions
diff --git a/include/acpi/acconfig.h b/include/acpi/acconfig.h
index b6bba7db52d9..11e72e6cdc01 100644
--- a/include/acpi/acconfig.h
+++ b/include/acpi/acconfig.h
@@ -63,7 +63,7 @@
63 63
64/* Current ACPICA subsystem version in YYYYMMDD format */ 64/* Current ACPICA subsystem version in YYYYMMDD format */
65 65
66#define ACPI_CA_VERSION 0x20060331 66#define ACPI_CA_VERSION 0x20060421
67 67
68/* 68/*
69 * OS name, used for the _OS object. The _OS object is essentially obsolete, 69 * OS name, used for the _OS object. The _OS object is essentially obsolete,
@@ -171,13 +171,15 @@
171#define ACPI_MAX_ADDRESS_SPACE 255 171#define ACPI_MAX_ADDRESS_SPACE 255
172 172
173/* Array sizes. Used for range checking also */ 173/* Array sizes. Used for range checking also */
174#define ACPI_MAX_MATCH_OPCODE 5
174 175
176#if 0
175#define ACPI_NUM_ACCESS_TYPES 6 177#define ACPI_NUM_ACCESS_TYPES 6
176#define ACPI_NUM_UPDATE_RULES 3 178#define ACPI_NUM_UPDATE_RULES 3
177#define ACPI_NUM_LOCK_RULES 2 179#define ACPI_NUM_LOCK_RULES 2
178#define ACPI_NUM_MATCH_OPS 6
179#define ACPI_NUM_OPCODES 256
180#define ACPI_NUM_FIELD_NAMES 2 180#define ACPI_NUM_FIELD_NAMES 2
181#define ACPI_NUM_OPCODES 256
182#endif
181 183
182/* RSDP checksums */ 184/* RSDP checksums */
183 185
@@ -188,10 +190,6 @@
188 190
189#define ACPI_SMBUS_BUFFER_SIZE 34 191#define ACPI_SMBUS_BUFFER_SIZE 34
190 192
191/* Number of strings associated with the _OSI reserved method */
192
193#define ACPI_NUM_OSI_STRINGS 12
194
195/****************************************************************************** 193/******************************************************************************
196 * 194 *
197 * ACPI AML Debugger 195 * ACPI AML Debugger
diff --git a/include/acpi/acdisasm.h b/include/acpi/acdisasm.h
index 70b52ffa969e..6f2556582f05 100644
--- a/include/acpi/acdisasm.h
+++ b/include/acpi/acdisasm.h
@@ -124,12 +124,12 @@ struct acpi_resource_tag {
124 124
125/* Strings used for decoding flags to ASL keywords */ 125/* Strings used for decoding flags to ASL keywords */
126 126
127extern const char *acpi_gbl_word_decode[4]; 127extern const char *acpi_gbl_word_decode[];
128extern const char *acpi_gbl_irq_decode[2]; 128extern const char *acpi_gbl_irq_decode[];
129extern const char *acpi_gbl_lock_rule[ACPI_NUM_LOCK_RULES]; 129extern const char *acpi_gbl_lock_rule[];
130extern const char *acpi_gbl_access_types[ACPI_NUM_ACCESS_TYPES]; 130extern const char *acpi_gbl_access_types[];
131extern const char *acpi_gbl_update_rules[ACPI_NUM_UPDATE_RULES]; 131extern const char *acpi_gbl_update_rules[];
132extern const char *acpi_gbl_match_ops[ACPI_NUM_MATCH_OPS]; 132extern const char *acpi_gbl_match_ops[];
133 133
134extern struct acpi_dmtable_info acpi_dm_table_info_asf0[]; 134extern struct acpi_dmtable_info acpi_dm_table_info_asf0[];
135extern struct acpi_dmtable_info acpi_dm_table_info_asf1[]; 135extern struct acpi_dmtable_info acpi_dm_table_info_asf1[];
diff --git a/include/acpi/acdispat.h b/include/acpi/acdispat.h
index c41a926ff317..fcf03eb41374 100644
--- a/include/acpi/acdispat.h
+++ b/include/acpi/acdispat.h
@@ -194,7 +194,9 @@ acpi_status
194acpi_ds_restart_control_method(struct acpi_walk_state *walk_state, 194acpi_ds_restart_control_method(struct acpi_walk_state *walk_state,
195 union acpi_operand_object *return_desc); 195 union acpi_operand_object *return_desc);
196 196
197void acpi_ds_terminate_control_method(struct acpi_walk_state *walk_state); 197void
198acpi_ds_terminate_control_method(union acpi_operand_object *method_desc,
199 struct acpi_walk_state *walk_state);
198 200
199acpi_status 201acpi_status
200acpi_ds_begin_method_execution(struct acpi_namespace_node *method_node, 202acpi_ds_begin_method_execution(struct acpi_namespace_node *method_node,
diff --git a/include/acpi/acexcep.h b/include/acpi/acexcep.h
index dc768aa580e4..797ca1ea5214 100644
--- a/include/acpi/acexcep.h
+++ b/include/acpi/acexcep.h
@@ -160,8 +160,9 @@
160#define AE_AML_BAD_RESOURCE_VALUE (acpi_status) (0x001F | AE_CODE_AML) 160#define AE_AML_BAD_RESOURCE_VALUE (acpi_status) (0x001F | AE_CODE_AML)
161#define AE_AML_CIRCULAR_REFERENCE (acpi_status) (0x0020 | AE_CODE_AML) 161#define AE_AML_CIRCULAR_REFERENCE (acpi_status) (0x0020 | AE_CODE_AML)
162#define AE_AML_BAD_RESOURCE_LENGTH (acpi_status) (0x0021 | AE_CODE_AML) 162#define AE_AML_BAD_RESOURCE_LENGTH (acpi_status) (0x0021 | AE_CODE_AML)
163#define AE_AML_ILLEGAL_ADDRESS (acpi_status) (0x0022 | AE_CODE_AML)
163 164
164#define AE_CODE_AML_MAX 0x0021 165#define AE_CODE_AML_MAX 0x0022
165 166
166/* 167/*
167 * Internal exceptions used for control 168 * Internal exceptions used for control
@@ -275,7 +276,8 @@ char const *acpi_gbl_exception_names_aml[] = {
275 "AE_AML_NO_RESOURCE_END_TAG", 276 "AE_AML_NO_RESOURCE_END_TAG",
276 "AE_AML_BAD_RESOURCE_VALUE", 277 "AE_AML_BAD_RESOURCE_VALUE",
277 "AE_AML_CIRCULAR_REFERENCE", 278 "AE_AML_CIRCULAR_REFERENCE",
278 "AE_AML_BAD_RESOURCE_LENGTH" 279 "AE_AML_BAD_RESOURCE_LENGTH",
280 "AE_AML_ILLEGAL_ADDRESS"
279}; 281};
280 282
281char const *acpi_gbl_exception_names_ctrl[] = { 283char const *acpi_gbl_exception_names_ctrl[] = {
diff --git a/include/acpi/acglobal.h b/include/acpi/acglobal.h
index 17c5b462676e..5f2daf402ee1 100644
--- a/include/acpi/acglobal.h
+++ b/include/acpi/acglobal.h
@@ -115,7 +115,7 @@ ACPI_EXTERN u8 ACPI_INIT_GLOBAL(acpi_gbl_enable_interpreter_slack, FALSE);
115 * Automatically serialize ALL control methods? Default is FALSE, meaning 115 * Automatically serialize ALL control methods? Default is FALSE, meaning
116 * to use the Serialized/not_serialized method flags on a per method basis. 116 * to use the Serialized/not_serialized method flags on a per method basis.
117 * Only change this if the ASL code is poorly written and cannot handle 117 * Only change this if the ASL code is poorly written and cannot handle
118 * reentrancy even though methods are marked "not_serialized". 118 * reentrancy even though methods are marked "NotSerialized".
119 */ 119 */
120ACPI_EXTERN u8 ACPI_INIT_GLOBAL(acpi_gbl_all_methods_serialized, FALSE); 120ACPI_EXTERN u8 ACPI_INIT_GLOBAL(acpi_gbl_all_methods_serialized, FALSE);
121 121
@@ -178,8 +178,8 @@ ACPI_EXTERN u8 acpi_gbl_integer_nybble_width;
178/* 178/*
179 * ACPI Table info arrays 179 * ACPI Table info arrays
180 */ 180 */
181extern struct acpi_table_list acpi_gbl_table_lists[NUM_ACPI_TABLE_TYPES]; 181extern struct acpi_table_list acpi_gbl_table_lists[ACPI_TABLE_ID_MAX + 1];
182extern struct acpi_table_support acpi_gbl_table_data[NUM_ACPI_TABLE_TYPES]; 182extern struct acpi_table_support acpi_gbl_table_data[ACPI_TABLE_ID_MAX + 1];
183 183
184/* 184/*
185 * Predefined mutex objects. This array contains the 185 * Predefined mutex objects. This array contains the
@@ -246,7 +246,6 @@ extern const char *acpi_gbl_sleep_state_names[ACPI_S_STATE_COUNT];
246extern const char *acpi_gbl_highest_dstate_names[4]; 246extern const char *acpi_gbl_highest_dstate_names[4];
247extern const struct acpi_opcode_info acpi_gbl_aml_op_info[AML_NUM_OPCODES]; 247extern const struct acpi_opcode_info acpi_gbl_aml_op_info[AML_NUM_OPCODES];
248extern const char *acpi_gbl_region_types[ACPI_NUM_PREDEFINED_REGIONS]; 248extern const char *acpi_gbl_region_types[ACPI_NUM_PREDEFINED_REGIONS];
249extern const char *acpi_gbl_valid_osi_strings[ACPI_NUM_OSI_STRINGS];
250 249
251/***************************************************************************** 250/*****************************************************************************
252 * 251 *
diff --git a/include/acpi/aclocal.h b/include/acpi/aclocal.h
index 99785bae59b3..06a9bd0a9ce9 100644
--- a/include/acpi/aclocal.h
+++ b/include/acpi/aclocal.h
@@ -105,14 +105,14 @@ static char *acpi_gbl_mutex_names[] = {
105 "ACPI_MTX_Parser", 105 "ACPI_MTX_Parser",
106 "ACPI_MTX_Dispatcher", 106 "ACPI_MTX_Dispatcher",
107 "ACPI_MTX_Tables", 107 "ACPI_MTX_Tables",
108 "ACPI_MTX_op_regions", 108 "ACPI_MTX_OpRegions",
109 "ACPI_MTX_Namespace", 109 "ACPI_MTX_Namespace",
110 "ACPI_MTX_Events", 110 "ACPI_MTX_Events",
111 "ACPI_MTX_Hardware", 111 "ACPI_MTX_Hardware",
112 "ACPI_MTX_Caches", 112 "ACPI_MTX_Caches",
113 "ACPI_MTX_Memory", 113 "ACPI_MTX_Memory",
114 "ACPI_MTX_debug_cmd_complete", 114 "ACPI_MTX_DebugCmdComplete",
115 "ACPI_MTX_debug_cmd_ready", 115 "ACPI_MTX_DebugCmdReady",
116}; 116};
117 117
118#endif 118#endif
@@ -205,9 +205,12 @@ struct acpi_namespace_node {
205#define ANOBJ_DATA_WIDTH_32 0x02 /* Parent table uses 32-bit math */ 205#define ANOBJ_DATA_WIDTH_32 0x02 /* Parent table uses 32-bit math */
206#define ANOBJ_METHOD_ARG 0x04 /* Node is a method argument */ 206#define ANOBJ_METHOD_ARG 0x04 /* Node is a method argument */
207#define ANOBJ_METHOD_LOCAL 0x08 /* Node is a method local */ 207#define ANOBJ_METHOD_LOCAL 0x08 /* Node is a method local */
208#define ANOBJ_SUBTREE_HAS_INI 0x10 /* Used to optimize device initialization */
209
208#define ANOBJ_METHOD_NO_RETVal 0x10 /* i_aSL only: Method has no return value */ 210#define ANOBJ_METHOD_NO_RETVal 0x10 /* i_aSL only: Method has no return value */
209#define ANOBJ_METHOD_SOME_NO_RETVal 0x20 /* i_aSL only: Method has at least one return value */ 211#define ANOBJ_METHOD_SOME_NO_RETVal 0x20 /* i_aSL only: Method has at least one return value */
210#define ANOBJ_IS_BIT_OFFSet 0x40 /* i_aSL only: Reference is a bit offset */ 212#define ANOBJ_IS_BIT_OFFSet 0x40 /* i_aSL only: Reference is a bit offset */
213#define ANOBJ_IS_REFERENCed 0x80 /* i_aSL only: Object was referenced */
211 214
212/* 215/*
213 * ACPI Table Descriptor. One per ACPI table 216 * ACPI Table Descriptor. One per ACPI table
diff --git a/include/acpi/acmacros.h b/include/acpi/acmacros.h
index 60ceed4c81bf..b7547aba91b9 100644
--- a/include/acpi/acmacros.h
+++ b/include/acpi/acmacros.h
@@ -56,6 +56,10 @@
56#define ACPI_CLEAR_BIT(target,bit) ((target) &= ~(bit)) 56#define ACPI_CLEAR_BIT(target,bit) ((target) &= ~(bit))
57#define ACPI_MIN(a,b) (((a)<(b))?(a):(b)) 57#define ACPI_MIN(a,b) (((a)<(b))?(a):(b))
58 58
59/* Size calculation */
60
61#define ACPI_ARRAY_LENGTH(x) (sizeof(x) / sizeof((x)[0]))
62
59#if ACPI_MACHINE_WIDTH == 16 63#if ACPI_MACHINE_WIDTH == 16
60 64
61/* 65/*
@@ -143,7 +147,7 @@
143#ifndef ACPI_MISALIGNMENT_NOT_SUPPORTED 147#ifndef ACPI_MISALIGNMENT_NOT_SUPPORTED
144#define ACPI_COMPARE_NAME(a,b) (*ACPI_CAST_PTR (u32,(a)) == *ACPI_CAST_PTR (u32,(b))) 148#define ACPI_COMPARE_NAME(a,b) (*ACPI_CAST_PTR (u32,(a)) == *ACPI_CAST_PTR (u32,(b)))
145#else 149#else
146#define ACPI_COMPARE_NAME(a,b) (!ACPI_STRNCMP (ACPI_CAST_PTR (char,(a)), ACPI_CAST_PTR (char,(b)), 4)) 150#define ACPI_COMPARE_NAME(a,b) (!ACPI_STRNCMP (ACPI_CAST_PTR (char,(a)), ACPI_CAST_PTR (char,(b)), ACPI_NAME_SIZE))
147#endif 151#endif
148 152
149/* 153/*
@@ -522,12 +526,12 @@
522#define ACPI_GET_FUNCTION_NAME _acpi_function_name 526#define ACPI_GET_FUNCTION_NAME _acpi_function_name
523/* 527/*
524 * The Name parameter should be the procedure name as a quoted string. 528 * The Name parameter should be the procedure name as a quoted string.
525 * This is declared as a local string ("my_function_name") so that it can 529 * This is declared as a local string ("MyFunctionName") so that it can
526 * be also used by the function exit macros below. 530 * be also used by the function exit macros below.
527 * Note: (const char) is used to be compatible with the debug interfaces 531 * Note: (const char) is used to be compatible with the debug interfaces
528 * and macros such as __FUNCTION__. 532 * and macros such as __FUNCTION__.
529 */ 533 */
530#define ACPI_FUNCTION_NAME(name) const char *_acpi_function_name = name; 534#define ACPI_FUNCTION_NAME(name) const char *_acpi_function_name = #name;
531 535
532#else 536#else
533/* Compiler supports __FUNCTION__ (or equivalent) -- Ignore this macro */ 537/* Compiler supports __FUNCTION__ (or equivalent) -- Ignore this macro */
@@ -551,7 +555,7 @@
551 * WARNING: These macros include a return statement. This is usually considered 555 * WARNING: These macros include a return statement. This is usually considered
552 * bad form, but having a separate exit macro is very ugly and difficult to maintain. 556 * bad form, but having a separate exit macro is very ugly and difficult to maintain.
553 * One of the FUNCTION_TRACE macros above must be used in conjunction with these macros 557 * One of the FUNCTION_TRACE macros above must be used in conjunction with these macros
554 * so that "_acpi_function_name" is defined. 558 * so that "_AcpiFunctionName" is defined.
555 * 559 *
556 * Note: the DO_WHILE0 macro is used to prevent some compilers from complaining 560 * Note: the DO_WHILE0 macro is used to prevent some compilers from complaining
557 * about these constructs. 561 * about these constructs.
diff --git a/include/acpi/acobject.h b/include/acpi/acobject.h
index d9442d346b9b..1747d94084d8 100644
--- a/include/acpi/acobject.h
+++ b/include/acpi/acobject.h
@@ -89,6 +89,7 @@
89#define AOPOBJ_OBJECT_INITIALIZED 0x08 89#define AOPOBJ_OBJECT_INITIALIZED 0x08
90#define AOPOBJ_SETUP_COMPLETE 0x10 90#define AOPOBJ_SETUP_COMPLETE 0x10
91#define AOPOBJ_SINGLE_DATUM 0x20 91#define AOPOBJ_SINGLE_DATUM 0x20
92#define AOPOBJ_INVALID 0x40 /* Used if host OS won't allow an op_region address */
92 93
93/****************************************************************************** 94/******************************************************************************
94 * 95 *
@@ -248,7 +249,7 @@ struct acpi_object_bank_field {
248struct acpi_object_index_field { 249struct acpi_object_index_field {
249 ACPI_OBJECT_COMMON_HEADER ACPI_COMMON_FIELD_INFO 250 ACPI_OBJECT_COMMON_HEADER ACPI_COMMON_FIELD_INFO
250 /* 251 /*
251 * No "region_obj" pointer needed since the Index and Data registers 252 * No "RegionObj" pointer needed since the Index and Data registers
252 * are each field definitions unto themselves. 253 * are each field definitions unto themselves.
253 */ 254 */
254 union acpi_operand_object *index_obj; /* Index register */ 255 union acpi_operand_object *index_obj; /* Index register */
diff --git a/include/acpi/acoutput.h b/include/acpi/acoutput.h
index 621fe23bb4fb..8d5039d0b430 100644
--- a/include/acpi/acoutput.h
+++ b/include/acpi/acoutput.h
@@ -50,7 +50,7 @@
50 * component basis and a per-exception-type basis. 50 * component basis and a per-exception-type basis.
51 */ 51 */
52 52
53/* Component IDs are used in the global "debug_layer" */ 53/* Component IDs are used in the global "DebugLayer" */
54 54
55#define ACPI_UTILITIES 0x00000001 55#define ACPI_UTILITIES 0x00000001
56#define ACPI_HARDWARE 0x00000002 56#define ACPI_HARDWARE 0x00000002
@@ -121,7 +121,7 @@
121#define ACPI_LV_INTERRUPTS 0x08000000 121#define ACPI_LV_INTERRUPTS 0x08000000
122#define ACPI_LV_VERBOSITY3 0x0F000000 | ACPI_LV_VERBOSITY2 122#define ACPI_LV_VERBOSITY3 0x0F000000 | ACPI_LV_VERBOSITY2
123 123
124/* Exceptionally verbose output -- also used in the global "debug_level" */ 124/* Exceptionally verbose output -- also used in the global "DebugLevel" */
125 125
126#define ACPI_LV_AML_DISASSEMBLE 0x10000000 126#define ACPI_LV_AML_DISASSEMBLE 0x10000000
127#define ACPI_LV_VERBOSE_INFO 0x20000000 127#define ACPI_LV_VERBOSE_INFO 0x20000000
@@ -135,7 +135,7 @@
135 */ 135 */
136#define ACPI_DEBUG_LEVEL(dl) (u32) dl,ACPI_DEBUG_PARAMETERS 136#define ACPI_DEBUG_LEVEL(dl) (u32) dl,ACPI_DEBUG_PARAMETERS
137 137
138/* Exception level -- used in the global "debug_level" */ 138/* Exception level -- used in the global "DebugLevel" */
139 139
140#define ACPI_DB_INIT ACPI_DEBUG_LEVEL (ACPI_LV_INIT) 140#define ACPI_DB_INIT ACPI_DEBUG_LEVEL (ACPI_LV_INIT)
141#define ACPI_DB_DEBUG_OBJECT ACPI_DEBUG_LEVEL (ACPI_LV_DEBUG_OBJECT) 141#define ACPI_DB_DEBUG_OBJECT ACPI_DEBUG_LEVEL (ACPI_LV_DEBUG_OBJECT)
@@ -150,7 +150,7 @@
150#define ACPI_DB_ERROR ACPI_DEBUG_LEVEL (ACPI_LV_ERROR) 150#define ACPI_DB_ERROR ACPI_DEBUG_LEVEL (ACPI_LV_ERROR)
151#define ACPI_DB_WARN ACPI_DEBUG_LEVEL (ACPI_LV_WARN) 151#define ACPI_DB_WARN ACPI_DEBUG_LEVEL (ACPI_LV_WARN)
152 152
153/* Trace level -- also used in the global "debug_level" */ 153/* Trace level -- also used in the global "DebugLevel" */
154 154
155#define ACPI_DB_INIT_NAMES ACPI_DEBUG_LEVEL (ACPI_LV_INIT_NAMES) 155#define ACPI_DB_INIT_NAMES ACPI_DEBUG_LEVEL (ACPI_LV_INIT_NAMES)
156#define ACPI_DB_THREADS ACPI_DEBUG_LEVEL (ACPI_LV_THREADS) 156#define ACPI_DB_THREADS ACPI_DEBUG_LEVEL (ACPI_LV_THREADS)
diff --git a/include/acpi/acpiosxf.h b/include/acpi/acpiosxf.h
index 42307d948c1b..a5264fac696e 100644
--- a/include/acpi/acpiosxf.h
+++ b/include/acpi/acpiosxf.h
@@ -212,6 +212,13 @@ acpi_os_derive_pci_id(acpi_handle rhandle,
212/* 212/*
213 * Miscellaneous 213 * Miscellaneous
214 */ 214 */
215
216acpi_status acpi_os_validate_interface(char *interface);
217
218acpi_status
219acpi_os_validate_address(u8 space_id,
220 acpi_physical_address address, acpi_size length);
221
215u8 acpi_os_readable(void *pointer, acpi_size length); 222u8 acpi_os_readable(void *pointer, acpi_size length);
216 223
217#ifdef ACPI_FUTURE_USAGE 224#ifdef ACPI_FUTURE_USAGE
diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h
index 091dd2567172..6d4e743a753b 100644
--- a/include/acpi/actypes.h
+++ b/include/acpi/actypes.h
@@ -490,15 +490,15 @@ typedef u64 acpi_integer;
490 */ 490 */
491typedef u32 acpi_table_type; 491typedef u32 acpi_table_type;
492 492
493#define ACPI_TABLE_RSDP (acpi_table_type) 0 493#define ACPI_TABLE_ID_RSDP (acpi_table_type) 0
494#define ACPI_TABLE_DSDT (acpi_table_type) 1 494#define ACPI_TABLE_ID_DSDT (acpi_table_type) 1
495#define ACPI_TABLE_FADT (acpi_table_type) 2 495#define ACPI_TABLE_ID_FADT (acpi_table_type) 2
496#define ACPI_TABLE_FACS (acpi_table_type) 3 496#define ACPI_TABLE_ID_FACS (acpi_table_type) 3
497#define ACPI_TABLE_PSDT (acpi_table_type) 4 497#define ACPI_TABLE_ID_PSDT (acpi_table_type) 4
498#define ACPI_TABLE_SSDT (acpi_table_type) 5 498#define ACPI_TABLE_ID_SSDT (acpi_table_type) 5
499#define ACPI_TABLE_XSDT (acpi_table_type) 6 499#define ACPI_TABLE_ID_XSDT (acpi_table_type) 6
500#define ACPI_TABLE_MAX 6 500#define ACPI_TABLE_ID_MAX 6
501#define NUM_ACPI_TABLE_TYPES (ACPI_TABLE_MAX+1) 501#define ACPI_NUM_TABLE_TYPES (ACPI_TABLE_ID_MAX+1)
502 502
503/* 503/*
504 * Types associated with ACPI names and objects. The first group of 504 * Types associated with ACPI names and objects. The first group of
@@ -829,7 +829,7 @@ struct acpi_system_info {
829 u32 debug_level; 829 u32 debug_level;
830 u32 debug_layer; 830 u32 debug_layer;
831 u32 num_table_types; 831 u32 num_table_types;
832 struct acpi_table_info table_info[NUM_ACPI_TABLE_TYPES]; 832 struct acpi_table_info table_info[ACPI_TABLE_ID_MAX + 1];
833}; 833};
834 834
835/* 835/*
@@ -924,7 +924,8 @@ struct acpi_compatible_id_list {
924#define ACPI_STA_DEVICE_PRESENT 0x01 924#define ACPI_STA_DEVICE_PRESENT 0x01
925#define ACPI_STA_DEVICE_ENABLED 0x02 925#define ACPI_STA_DEVICE_ENABLED 0x02
926#define ACPI_STA_DEVICE_UI 0x04 926#define ACPI_STA_DEVICE_UI 0x04
927#define ACPI_STA_DEVICE_OK 0x08 927#define ACPI_STA_DEVICE_FUNCTIONING 0x08
928#define ACPI_STA_DEVICE_OK 0x08 /* Synonym */
928#define ACPI_STA_BATTERY_PRESENT 0x10 929#define ACPI_STA_BATTERY_PRESENT 0x10
929 930
930#define ACPI_COMMON_OBJ_INFO \ 931#define ACPI_COMMON_OBJ_INFO \
diff --git a/include/acpi/acutils.h b/include/acpi/acutils.h
index 115b0cbc370f..ba039ea1a057 100644
--- a/include/acpi/acutils.h
+++ b/include/acpi/acutils.h
@@ -50,24 +50,24 @@ extern const u8 acpi_gbl_resource_aml_sizes[];
50 50
51#if defined(ACPI_DISASSEMBLER) || defined (ACPI_DEBUGGER) 51#if defined(ACPI_DISASSEMBLER) || defined (ACPI_DEBUGGER)
52 52
53extern const char *acpi_gbl_BMdecode[2]; 53extern const char *acpi_gbl_bm_decode[];
54extern const char *acpi_gbl_config_decode[4]; 54extern const char *acpi_gbl_config_decode[];
55extern const char *acpi_gbl_consume_decode[2]; 55extern const char *acpi_gbl_consume_decode[];
56extern const char *acpi_gbl_DECdecode[2]; 56extern const char *acpi_gbl_dec_decode[];
57extern const char *acpi_gbl_HEdecode[2]; 57extern const char *acpi_gbl_he_decode[];
58extern const char *acpi_gbl_io_decode[2]; 58extern const char *acpi_gbl_io_decode[];
59extern const char *acpi_gbl_LLdecode[2]; 59extern const char *acpi_gbl_ll_decode[];
60extern const char *acpi_gbl_max_decode[2]; 60extern const char *acpi_gbl_max_decode[];
61extern const char *acpi_gbl_MEMdecode[4]; 61extern const char *acpi_gbl_mem_decode[];
62extern const char *acpi_gbl_min_decode[2]; 62extern const char *acpi_gbl_min_decode[];
63extern const char *acpi_gbl_MTPdecode[4]; 63extern const char *acpi_gbl_mtp_decode[];
64extern const char *acpi_gbl_RNGdecode[4]; 64extern const char *acpi_gbl_rng_decode[];
65extern const char *acpi_gbl_RWdecode[2]; 65extern const char *acpi_gbl_rw_decode[];
66extern const char *acpi_gbl_SHRdecode[2]; 66extern const char *acpi_gbl_shr_decode[];
67extern const char *acpi_gbl_SIZdecode[4]; 67extern const char *acpi_gbl_siz_decode[];
68extern const char *acpi_gbl_TRSdecode[2]; 68extern const char *acpi_gbl_trs_decode[];
69extern const char *acpi_gbl_TTPdecode[2]; 69extern const char *acpi_gbl_ttp_decode[];
70extern const char *acpi_gbl_TYPdecode[4]; 70extern const char *acpi_gbl_typ_decode[];
71#endif 71#endif
72 72
73/* Types for Resource descriptor entries */ 73/* Types for Resource descriptor entries */
@@ -81,7 +81,7 @@ typedef
81acpi_status(*acpi_walk_aml_callback) (u8 * aml, 81acpi_status(*acpi_walk_aml_callback) (u8 * aml,
82 u32 length, 82 u32 length,
83 u32 offset, 83 u32 offset,
84 u8 resource_index, void *context); 84 u8 resource_index, void **context);
85 85
86typedef 86typedef
87acpi_status(*acpi_pkg_callback) (u8 object_type, 87acpi_status(*acpi_pkg_callback) (u8 object_type,
diff --git a/include/acpi/platform/acenv.h b/include/acpi/platform/acenv.h
index fd189d425c78..453a469fd397 100644
--- a/include/acpi/platform/acenv.h
+++ b/include/acpi/platform/acenv.h
@@ -49,16 +49,18 @@
49 */ 49 */
50 50
51#ifdef ACPI_LIBRARY 51#ifdef ACPI_LIBRARY
52/*
53 * Note: The non-debug version of the acpi_library does not contain any
54 * debug support, for minimimal size. The debug version uses ACPI_FULL_DEBUG
55 */
52#define ACPI_USE_LOCAL_CACHE 56#define ACPI_USE_LOCAL_CACHE
53#endif 57#endif
54 58
55#ifdef ACPI_DUMP_APP 59#ifdef ACPI_ASL_COMPILER
56#ifndef MSDOS
57#define ACPI_DEBUG_OUTPUT 60#define ACPI_DEBUG_OUTPUT
58#endif
59#define ACPI_APPLICATION 61#define ACPI_APPLICATION
60#define ACPI_DISASSEMBLER 62#define ACPI_DISASSEMBLER
61#define ACPI_NO_METHOD_EXECUTION 63#define ACPI_CONSTANT_EVAL_ONLY
62#define ACPI_LARGE_NAMESPACE_NODE 64#define ACPI_LARGE_NAMESPACE_NODE
63#define ACPI_DATA_TABLE_DISASSEMBLY 65#define ACPI_DATA_TABLE_DISASSEMBLY
64#endif 66#endif
@@ -66,19 +68,20 @@
66#ifdef ACPI_EXEC_APP 68#ifdef ACPI_EXEC_APP
67#undef DEBUGGER_THREADING 69#undef DEBUGGER_THREADING
68#define DEBUGGER_THREADING DEBUGGER_SINGLE_THREADED 70#define DEBUGGER_THREADING DEBUGGER_SINGLE_THREADED
69#define ACPI_DEBUG_OUTPUT 71#define ACPI_FULL_DEBUG
70#define ACPI_APPLICATION 72#define ACPI_APPLICATION
71#define ACPI_DEBUGGER 73#define ACPI_DEBUGGER
72#define ACPI_DISASSEMBLER
73#define ACPI_MUTEX_DEBUG 74#define ACPI_MUTEX_DEBUG
74#define ACPI_DBG_TRACK_ALLOCATIONS 75#define ACPI_DBG_TRACK_ALLOCATIONS
75#endif 76#endif
76 77
77#ifdef ACPI_ASL_COMPILER 78#ifdef ACPI_DASM_APP
79#ifndef MSDOS
78#define ACPI_DEBUG_OUTPUT 80#define ACPI_DEBUG_OUTPUT
81#endif
79#define ACPI_APPLICATION 82#define ACPI_APPLICATION
80#define ACPI_DISASSEMBLER 83#define ACPI_DISASSEMBLER
81#define ACPI_CONSTANT_EVAL_ONLY 84#define ACPI_NO_METHOD_EXECUTION
82#define ACPI_LARGE_NAMESPACE_NODE 85#define ACPI_LARGE_NAMESPACE_NODE
83#define ACPI_DATA_TABLE_DISASSEMBLY 86#define ACPI_DATA_TABLE_DISASSEMBLY
84#endif 87#endif
@@ -88,6 +91,12 @@
88#define ACPI_USE_LOCAL_CACHE 91#define ACPI_USE_LOCAL_CACHE
89#endif 92#endif
90 93
94#ifdef ACPI_FULL_DEBUG
95#define ACPI_DEBUGGER
96#define ACPI_DEBUG_OUTPUT
97#define ACPI_DISASSEMBLER
98#endif
99
91/* 100/*
92 * Environment configuration. The purpose of this file is to interface to the 101 * Environment configuration. The purpose of this file is to interface to the
93 * local generation environment. 102 * local generation environment.