diff options
author | Robert Moore <robert.moore@intel.com> | 2005-04-18 22:49:35 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-07-12 00:08:52 -0400 |
commit | 44f6c01242da4e162f28d8e1216a8c7a91174605 (patch) | |
tree | 53f724764f1bd9036dfb049a643d198125cc9edc /drivers/acpi/namespace | |
parent | ebb6e1a6122fd6b7c96470cfd4ce0f04150e5084 (diff) |
ACPICA 20050408 from Bob Moore
Fixed three cases in the interpreter where an "index"
argument to an ASL function was still (internally) 32
bits instead of the required 64 bits. This was the Index
argument to the Index, Mid, and Match operators.
The "strupr" function is now permanently local
(acpi_ut_strupr), since this is not a POSIX-defined
function and not present in most kernel-level C
libraries. References to the C library strupr function
have been removed from the headers.
Completed the deployment of static
functions/prototypes. All prototypes with the static
attribute have been moved from the headers to the owning
C file.
ACPICA 20050329 from Bob Moore
An error is now generated if an attempt is made to create
a Buffer Field of length zero (A CreateField with a length
operand of zero.)
The interpreter now issues a warning whenever executable
code at the module level is detected during ACPI table
load. This will give some idea of the prevalence of this
type of code.
Implemented support for references to named objects (other
than control methods) within package objects.
Enhanced package object output for the debug
object. Package objects are now completely dumped, showing
all elements.
Enhanced miscellaneous object output for the debug
object. Any object can now be written to the debug object
(for example, a device object can be written, and the type
of the object will be displayed.)
The "static" qualifier has been added to all local
functions across the core subsystem.
The number of "long" lines (> 80 chars) within the source
has been significantly reduced, by about 1/3.
Cleaned up all header files to ensure that all CA/iASL
functions are prototyped (even static functions) and the
formatting is consistent.
Two new header files have been added, acopcode.h and
acnames.h.
Removed several obsolete functions that were no longer
used.
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/namespace')
-rw-r--r-- | drivers/acpi/namespace/nsaccess.c | 5 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsalloc.c | 121 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsdump.c | 109 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsdumpdv.c | 18 | ||||
-rw-r--r-- | drivers/acpi/namespace/nseval.c | 70 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsinit.c | 28 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsload.c | 28 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsnames.c | 12 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsobject.c | 14 | ||||
-rw-r--r-- | drivers/acpi/namespace/nssearch.c | 29 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsutils.c | 167 | ||||
-rw-r--r-- | drivers/acpi/namespace/nswalk.c | 2 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsxfeval.c | 16 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsxfname.c | 8 | ||||
-rw-r--r-- | drivers/acpi/namespace/nsxfobj.c | 4 |
15 files changed, 390 insertions, 241 deletions
diff --git a/drivers/acpi/namespace/nsaccess.c b/drivers/acpi/namespace/nsaccess.c index 1c0c12336c57..ece7a9dedd5c 100644 --- a/drivers/acpi/namespace/nsaccess.c +++ b/drivers/acpi/namespace/nsaccess.c | |||
@@ -67,7 +67,8 @@ | |||
67 | ******************************************************************************/ | 67 | ******************************************************************************/ |
68 | 68 | ||
69 | acpi_status | 69 | acpi_status |
70 | acpi_ns_root_initialize (void) | 70 | acpi_ns_root_initialize ( |
71 | void) | ||
71 | { | 72 | { |
72 | acpi_status status; | 73 | acpi_status status; |
73 | const struct acpi_predefined_names *init_val = NULL; | 74 | const struct acpi_predefined_names *init_val = NULL; |
@@ -265,7 +266,7 @@ unlock_and_exit: | |||
265 | * | 266 | * |
266 | * FUNCTION: acpi_ns_lookup | 267 | * FUNCTION: acpi_ns_lookup |
267 | * | 268 | * |
268 | * PARAMETERS: prefix_node - Search scope if name is not fully qualified | 269 | * PARAMETERS: scope_info - Current scope info block |
269 | * Pathname - Search pathname, in internal format | 270 | * Pathname - Search pathname, in internal format |
270 | * (as represented in the AML stream) | 271 | * (as represented in the AML stream) |
271 | * Type - Type associated with name | 272 | * Type - Type associated with name |
diff --git a/drivers/acpi/namespace/nsalloc.c b/drivers/acpi/namespace/nsalloc.c index bfd922c5c7d1..5653a19d7172 100644 --- a/drivers/acpi/namespace/nsalloc.c +++ b/drivers/acpi/namespace/nsalloc.c | |||
@@ -49,14 +49,20 @@ | |||
49 | #define _COMPONENT ACPI_NAMESPACE | 49 | #define _COMPONENT ACPI_NAMESPACE |
50 | ACPI_MODULE_NAME ("nsalloc") | 50 | ACPI_MODULE_NAME ("nsalloc") |
51 | 51 | ||
52 | /* Local prototypes */ | ||
53 | |||
54 | static void | ||
55 | acpi_ns_remove_reference ( | ||
56 | struct acpi_namespace_node *node); | ||
57 | |||
52 | 58 | ||
53 | /******************************************************************************* | 59 | /******************************************************************************* |
54 | * | 60 | * |
55 | * FUNCTION: acpi_ns_create_node | 61 | * FUNCTION: acpi_ns_create_node |
56 | * | 62 | * |
57 | * PARAMETERS: acpi_name - Name of the new node | 63 | * PARAMETERS: Name - Name of the new node (4 char ACPI name) |
58 | * | 64 | * |
59 | * RETURN: None | 65 | * RETURN: New namespace node (Null on failure) |
60 | * | 66 | * |
61 | * DESCRIPTION: Create a namespace node | 67 | * DESCRIPTION: Create a namespace node |
62 | * | 68 | * |
@@ -145,7 +151,6 @@ acpi_ns_delete_node ( | |||
145 | } | 151 | } |
146 | } | 152 | } |
147 | 153 | ||
148 | |||
149 | ACPI_MEM_TRACKING (acpi_gbl_memory_lists[ACPI_MEM_LIST_NSNODE].total_freed++); | 154 | ACPI_MEM_TRACKING (acpi_gbl_memory_lists[ACPI_MEM_LIST_NSNODE].total_freed++); |
150 | 155 | ||
151 | /* | 156 | /* |
@@ -157,57 +162,6 @@ acpi_ns_delete_node ( | |||
157 | } | 162 | } |
158 | 163 | ||
159 | 164 | ||
160 | #ifdef ACPI_ALPHABETIC_NAMESPACE | ||
161 | /******************************************************************************* | ||
162 | * | ||
163 | * FUNCTION: acpi_ns_compare_names | ||
164 | * | ||
165 | * PARAMETERS: Name1 - First name to compare | ||
166 | * Name2 - Second name to compare | ||
167 | * | ||
168 | * RETURN: value from strncmp | ||
169 | * | ||
170 | * DESCRIPTION: Compare two ACPI names. Names that are prefixed with an | ||
171 | * underscore are forced to be alphabetically first. | ||
172 | * | ||
173 | ******************************************************************************/ | ||
174 | |||
175 | int | ||
176 | acpi_ns_compare_names ( | ||
177 | char *name1, | ||
178 | char *name2) | ||
179 | { | ||
180 | char reversed_name1[ACPI_NAME_SIZE]; | ||
181 | char reversed_name2[ACPI_NAME_SIZE]; | ||
182 | u32 i; | ||
183 | u32 j; | ||
184 | |||
185 | |||
186 | /* | ||
187 | * Replace all instances of "underscore" with a value that is smaller so | ||
188 | * that all names that are prefixed with underscore(s) are alphabetically | ||
189 | * first. | ||
190 | * | ||
191 | * Reverse the name bytewise so we can just do a 32-bit compare instead | ||
192 | * of a strncmp. | ||
193 | */ | ||
194 | for (i = 0, j= (ACPI_NAME_SIZE - 1); i < ACPI_NAME_SIZE; i++, j--) { | ||
195 | reversed_name1[j] = name1[i]; | ||
196 | if (name1[i] == '_') { | ||
197 | reversed_name1[j] = '*'; | ||
198 | } | ||
199 | |||
200 | reversed_name2[j] = name2[i]; | ||
201 | if (name2[i] == '_') { | ||
202 | reversed_name2[j] = '*'; | ||
203 | } | ||
204 | } | ||
205 | |||
206 | return (*(int *) reversed_name1 - *(int *) reversed_name2); | ||
207 | } | ||
208 | #endif | ||
209 | |||
210 | |||
211 | /******************************************************************************* | 165 | /******************************************************************************* |
212 | * | 166 | * |
213 | * FUNCTION: acpi_ns_install_node | 167 | * FUNCTION: acpi_ns_install_node |
@@ -271,7 +225,8 @@ acpi_ns_install_node ( | |||
271 | * alphabetic placement. | 225 | * alphabetic placement. |
272 | */ | 226 | */ |
273 | previous_child_node = NULL; | 227 | previous_child_node = NULL; |
274 | while (acpi_ns_compare_names (acpi_ut_get_node_name (child_node), acpi_ut_get_node_name (node)) < 0) { | 228 | while (acpi_ns_compare_names (acpi_ut_get_node_name (child_node), |
229 | acpi_ut_get_node_name (node)) < 0) { | ||
275 | if (child_node->flags & ANOBJ_END_OF_PEER_LIST) { | 230 | if (child_node->flags & ANOBJ_END_OF_PEER_LIST) { |
276 | /* Last peer; Clear end-of-list flag */ | 231 | /* Last peer; Clear end-of-list flag */ |
277 | 232 | ||
@@ -429,7 +384,8 @@ acpi_ns_delete_children ( | |||
429 | /* There should be only one reference remaining on this node */ | 384 | /* There should be only one reference remaining on this node */ |
430 | 385 | ||
431 | if (child_node->reference_count != 1) { | 386 | if (child_node->reference_count != 1) { |
432 | ACPI_REPORT_WARNING (("Existing references (%d) on node being deleted (%p)\n", | 387 | ACPI_REPORT_WARNING (( |
388 | "Existing references (%d) on node being deleted (%p)\n", | ||
433 | child_node->reference_count, child_node)); | 389 | child_node->reference_count, child_node)); |
434 | } | 390 | } |
435 | 391 | ||
@@ -548,7 +504,7 @@ acpi_ns_delete_namespace_subtree ( | |||
548 | * | 504 | * |
549 | ******************************************************************************/ | 505 | ******************************************************************************/ |
550 | 506 | ||
551 | void | 507 | static void |
552 | acpi_ns_remove_reference ( | 508 | acpi_ns_remove_reference ( |
553 | struct acpi_namespace_node *node) | 509 | struct acpi_namespace_node *node) |
554 | { | 510 | { |
@@ -683,3 +639,54 @@ acpi_ns_delete_namespace_by_owner ( | |||
683 | } | 639 | } |
684 | 640 | ||
685 | 641 | ||
642 | #ifdef ACPI_ALPHABETIC_NAMESPACE | ||
643 | /******************************************************************************* | ||
644 | * | ||
645 | * FUNCTION: acpi_ns_compare_names | ||
646 | * | ||
647 | * PARAMETERS: Name1 - First name to compare | ||
648 | * Name2 - Second name to compare | ||
649 | * | ||
650 | * RETURN: value from strncmp | ||
651 | * | ||
652 | * DESCRIPTION: Compare two ACPI names. Names that are prefixed with an | ||
653 | * underscore are forced to be alphabetically first. | ||
654 | * | ||
655 | ******************************************************************************/ | ||
656 | |||
657 | int | ||
658 | acpi_ns_compare_names ( | ||
659 | char *name1, | ||
660 | char *name2) | ||
661 | { | ||
662 | char reversed_name1[ACPI_NAME_SIZE]; | ||
663 | char reversed_name2[ACPI_NAME_SIZE]; | ||
664 | u32 i; | ||
665 | u32 j; | ||
666 | |||
667 | |||
668 | /* | ||
669 | * Replace all instances of "underscore" with a value that is smaller so | ||
670 | * that all names that are prefixed with underscore(s) are alphabetically | ||
671 | * first. | ||
672 | * | ||
673 | * Reverse the name bytewise so we can just do a 32-bit compare instead | ||
674 | * of a strncmp. | ||
675 | */ | ||
676 | for (i = 0, j= (ACPI_NAME_SIZE - 1); i < ACPI_NAME_SIZE; i++, j--) { | ||
677 | reversed_name1[j] = name1[i]; | ||
678 | if (name1[i] == '_') { | ||
679 | reversed_name1[j] = '*'; | ||
680 | } | ||
681 | |||
682 | reversed_name2[j] = name2[i]; | ||
683 | if (name2[i] == '_') { | ||
684 | reversed_name2[j] = '*'; | ||
685 | } | ||
686 | } | ||
687 | |||
688 | return (*(int *) reversed_name1 - *(int *) reversed_name2); | ||
689 | } | ||
690 | #endif | ||
691 | |||
692 | |||
diff --git a/drivers/acpi/namespace/nsdump.c b/drivers/acpi/namespace/nsdump.c index 1f6af3eb6c91..4550e6f9809b 100644 --- a/drivers/acpi/namespace/nsdump.c +++ b/drivers/acpi/namespace/nsdump.c | |||
@@ -50,16 +50,32 @@ | |||
50 | #define _COMPONENT ACPI_NAMESPACE | 50 | #define _COMPONENT ACPI_NAMESPACE |
51 | ACPI_MODULE_NAME ("nsdump") | 51 | ACPI_MODULE_NAME ("nsdump") |
52 | 52 | ||
53 | /* Local prototypes */ | ||
53 | 54 | ||
54 | #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) | 55 | #ifdef ACPI_OBSOLETE_FUNCTIONS |
56 | void | ||
57 | acpi_ns_dump_root_devices ( | ||
58 | void); | ||
55 | 59 | ||
60 | static acpi_status | ||
61 | acpi_ns_dump_one_device ( | ||
62 | acpi_handle obj_handle, | ||
63 | u32 level, | ||
64 | void *context, | ||
65 | void **return_value); | ||
66 | #endif | ||
67 | |||
68 | |||
69 | #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) | ||
56 | /******************************************************************************* | 70 | /******************************************************************************* |
57 | * | 71 | * |
58 | * FUNCTION: acpi_ns_print_pathname | 72 | * FUNCTION: acpi_ns_print_pathname |
59 | * | 73 | * |
60 | * PARAMETERS: num_segment - Number of ACPI name segments | 74 | * PARAMETERS: num_segments - Number of ACPI name segments |
61 | * Pathname - The compressed (internal) path | 75 | * Pathname - The compressed (internal) path |
62 | * | 76 | * |
77 | * RETURN: None | ||
78 | * | ||
63 | * DESCRIPTION: Print an object's full namespace pathname | 79 | * DESCRIPTION: Print an object's full namespace pathname |
64 | * | 80 | * |
65 | ******************************************************************************/ | 81 | ******************************************************************************/ |
@@ -103,6 +119,8 @@ acpi_ns_print_pathname ( | |||
103 | * Level - Desired debug level | 119 | * Level - Desired debug level |
104 | * Component - Caller's component ID | 120 | * Component - Caller's component ID |
105 | * | 121 | * |
122 | * RETURN: None | ||
123 | * | ||
106 | * DESCRIPTION: Print an object's full namespace pathname | 124 | * DESCRIPTION: Print an object's full namespace pathname |
107 | * Manages allocation/freeing of a pathname buffer | 125 | * Manages allocation/freeing of a pathname buffer |
108 | * | 126 | * |
@@ -137,9 +155,12 @@ acpi_ns_dump_pathname ( | |||
137 | * | 155 | * |
138 | * FUNCTION: acpi_ns_dump_one_object | 156 | * FUNCTION: acpi_ns_dump_one_object |
139 | * | 157 | * |
140 | * PARAMETERS: Handle - Node to be dumped | 158 | * PARAMETERS: obj_handle - Node to be dumped |
141 | * Level - Nesting level of the handle | 159 | * Level - Nesting level of the handle |
142 | * Context - Passed into walk_namespace | 160 | * Context - Passed into walk_namespace |
161 | * return_value - Not used | ||
162 | * | ||
163 | * RETURN: Status | ||
143 | * | 164 | * |
144 | * DESCRIPTION: Dump a single Node | 165 | * DESCRIPTION: Dump a single Node |
145 | * This procedure is a user_function called by acpi_ns_walk_namespace. | 166 | * This procedure is a user_function called by acpi_ns_walk_namespace. |
@@ -394,8 +415,7 @@ acpi_ns_dump_one_object ( | |||
394 | return (AE_OK); | 415 | return (AE_OK); |
395 | } | 416 | } |
396 | 417 | ||
397 | acpi_os_printf ("(R%d)", | 418 | acpi_os_printf ("(R%d)", obj_desc->common.reference_count); |
398 | obj_desc->common.reference_count); | ||
399 | 419 | ||
400 | switch (type) { | 420 | switch (type) { |
401 | case ACPI_TYPE_METHOD: | 421 | case ACPI_TYPE_METHOD: |
@@ -551,18 +571,20 @@ cleanup: | |||
551 | 571 | ||
552 | 572 | ||
553 | #ifdef ACPI_FUTURE_USAGE | 573 | #ifdef ACPI_FUTURE_USAGE |
554 | |||
555 | /******************************************************************************* | 574 | /******************************************************************************* |
556 | * | 575 | * |
557 | * FUNCTION: acpi_ns_dump_objects | 576 | * FUNCTION: acpi_ns_dump_objects |
558 | * | 577 | * |
559 | * PARAMETERS: Type - Object type to be dumped | 578 | * PARAMETERS: Type - Object type to be dumped |
579 | * display_type - 0 or ACPI_DISPLAY_SUMMARY | ||
560 | * max_depth - Maximum depth of dump. Use ACPI_UINT32_MAX | 580 | * max_depth - Maximum depth of dump. Use ACPI_UINT32_MAX |
561 | * for an effectively unlimited depth. | 581 | * for an effectively unlimited depth. |
562 | * owner_id - Dump only objects owned by this ID. Use | 582 | * owner_id - Dump only objects owned by this ID. Use |
563 | * ACPI_UINT32_MAX to match all owners. | 583 | * ACPI_UINT32_MAX to match all owners. |
564 | * start_handle - Where in namespace to start/end search | 584 | * start_handle - Where in namespace to start/end search |
565 | * | 585 | * |
586 | * RETURN: None | ||
587 | * | ||
566 | * DESCRIPTION: Dump typed objects within the loaded namespace. | 588 | * DESCRIPTION: Dump typed objects within the loaded namespace. |
567 | * Uses acpi_ns_walk_namespace in conjunction with acpi_ns_dump_one_object. | 589 | * Uses acpi_ns_walk_namespace in conjunction with acpi_ns_dump_one_object. |
568 | * | 590 | * |
@@ -594,6 +616,39 @@ acpi_ns_dump_objects ( | |||
594 | 616 | ||
595 | /******************************************************************************* | 617 | /******************************************************************************* |
596 | * | 618 | * |
619 | * FUNCTION: acpi_ns_dump_entry | ||
620 | * | ||
621 | * PARAMETERS: Handle - Node to be dumped | ||
622 | * debug_level - Output level | ||
623 | * | ||
624 | * RETURN: None | ||
625 | * | ||
626 | * DESCRIPTION: Dump a single Node | ||
627 | * | ||
628 | ******************************************************************************/ | ||
629 | |||
630 | void | ||
631 | acpi_ns_dump_entry ( | ||
632 | acpi_handle handle, | ||
633 | u32 debug_level) | ||
634 | { | ||
635 | struct acpi_walk_info info; | ||
636 | |||
637 | |||
638 | ACPI_FUNCTION_ENTRY (); | ||
639 | |||
640 | |||
641 | info.debug_level = debug_level; | ||
642 | info.owner_id = ACPI_UINT32_MAX; | ||
643 | info.display_type = ACPI_DISPLAY_SUMMARY; | ||
644 | |||
645 | (void) acpi_ns_dump_one_object (handle, 1, &info, NULL); | ||
646 | } | ||
647 | |||
648 | |||
649 | #ifdef _ACPI_ASL_COMPILER | ||
650 | /******************************************************************************* | ||
651 | * | ||
597 | * FUNCTION: acpi_ns_dump_tables | 652 | * FUNCTION: acpi_ns_dump_tables |
598 | * | 653 | * |
599 | * PARAMETERS: search_base - Root of subtree to be dumped, or | 654 | * PARAMETERS: search_base - Root of subtree to be dumped, or |
@@ -601,6 +656,8 @@ acpi_ns_dump_objects ( | |||
601 | * max_depth - Maximum depth of dump. Use INT_MAX | 656 | * max_depth - Maximum depth of dump. Use INT_MAX |
602 | * for an effectively unlimited depth. | 657 | * for an effectively unlimited depth. |
603 | * | 658 | * |
659 | * RETURN: None | ||
660 | * | ||
604 | * DESCRIPTION: Dump the name space, or a portion of it. | 661 | * DESCRIPTION: Dump the name space, or a portion of it. |
605 | * | 662 | * |
606 | ******************************************************************************/ | 663 | ******************************************************************************/ |
@@ -626,7 +683,7 @@ acpi_ns_dump_tables ( | |||
626 | } | 683 | } |
627 | 684 | ||
628 | if (ACPI_NS_ALL == search_base) { | 685 | if (ACPI_NS_ALL == search_base) { |
629 | /* entire namespace */ | 686 | /* Entire namespace */ |
630 | 687 | ||
631 | search_handle = acpi_gbl_root_node; | 688 | search_handle = acpi_gbl_root_node; |
632 | ACPI_DEBUG_PRINT ((ACPI_DB_TABLES, "\\\n")); | 689 | ACPI_DEBUG_PRINT ((ACPI_DB_TABLES, "\\\n")); |
@@ -636,38 +693,6 @@ acpi_ns_dump_tables ( | |||
636 | ACPI_UINT32_MAX, search_handle); | 693 | ACPI_UINT32_MAX, search_handle); |
637 | return_VOID; | 694 | return_VOID; |
638 | } | 695 | } |
639 | 696 | #endif /* _ACPI_ASL_COMPILER */ | |
640 | #endif /* ACPI_FUTURE_USAGE */ | 697 | #endif /* ACPI_FUTURE_USAGE */ |
641 | 698 | #endif /* defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) */ | |
642 | |||
643 | /******************************************************************************* | ||
644 | * | ||
645 | * FUNCTION: acpi_ns_dump_entry | ||
646 | * | ||
647 | * PARAMETERS: Handle - Node to be dumped | ||
648 | * debug_level - Output level | ||
649 | * | ||
650 | * DESCRIPTION: Dump a single Node | ||
651 | * | ||
652 | ******************************************************************************/ | ||
653 | |||
654 | void | ||
655 | acpi_ns_dump_entry ( | ||
656 | acpi_handle handle, | ||
657 | u32 debug_level) | ||
658 | { | ||
659 | struct acpi_walk_info info; | ||
660 | |||
661 | |||
662 | ACPI_FUNCTION_ENTRY (); | ||
663 | |||
664 | |||
665 | info.debug_level = debug_level; | ||
666 | info.owner_id = ACPI_UINT32_MAX; | ||
667 | info.display_type = ACPI_DISPLAY_SUMMARY; | ||
668 | |||
669 | (void) acpi_ns_dump_one_object (handle, 1, &info, NULL); | ||
670 | } | ||
671 | |||
672 | #endif | ||
673 | |||
diff --git a/drivers/acpi/namespace/nsdumpdv.c b/drivers/acpi/namespace/nsdumpdv.c index d30a59e6b07d..27c4f7cd2a43 100644 --- a/drivers/acpi/namespace/nsdumpdv.c +++ b/drivers/acpi/namespace/nsdumpdv.c | |||
@@ -43,15 +43,18 @@ | |||
43 | 43 | ||
44 | 44 | ||
45 | #include <acpi/acpi.h> | 45 | #include <acpi/acpi.h> |
46 | #include <acpi/acnamesp.h> | ||
47 | 46 | ||
48 | 47 | ||
48 | /* TBD: This entire module is apparently obsolete and should be removed */ | ||
49 | |||
49 | #define _COMPONENT ACPI_NAMESPACE | 50 | #define _COMPONENT ACPI_NAMESPACE |
50 | ACPI_MODULE_NAME ("nsdumpdv") | 51 | ACPI_MODULE_NAME ("nsdumpdv") |
51 | 52 | ||
52 | 53 | #ifdef ACPI_OBSOLETE_FUNCTIONS | |
53 | #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) | 54 | #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER) |
54 | 55 | ||
56 | #include <acpi/acnamesp.h> | ||
57 | |||
55 | /******************************************************************************* | 58 | /******************************************************************************* |
56 | * | 59 | * |
57 | * FUNCTION: acpi_ns_dump_one_device | 60 | * FUNCTION: acpi_ns_dump_one_device |
@@ -59,13 +62,16 @@ | |||
59 | * PARAMETERS: Handle - Node to be dumped | 62 | * PARAMETERS: Handle - Node to be dumped |
60 | * Level - Nesting level of the handle | 63 | * Level - Nesting level of the handle |
61 | * Context - Passed into walk_namespace | 64 | * Context - Passed into walk_namespace |
65 | * return_value - Not used | ||
66 | * | ||
67 | * RETURN: Status | ||
62 | * | 68 | * |
63 | * DESCRIPTION: Dump a single Node that represents a device | 69 | * DESCRIPTION: Dump a single Node that represents a device |
64 | * This procedure is a user_function called by acpi_ns_walk_namespace. | 70 | * This procedure is a user_function called by acpi_ns_walk_namespace. |
65 | * | 71 | * |
66 | ******************************************************************************/ | 72 | ******************************************************************************/ |
67 | 73 | ||
68 | acpi_status | 74 | static acpi_status |
69 | acpi_ns_dump_one_device ( | 75 | acpi_ns_dump_one_device ( |
70 | acpi_handle obj_handle, | 76 | acpi_handle obj_handle, |
71 | u32 level, | 77 | u32 level, |
@@ -108,12 +114,15 @@ acpi_ns_dump_one_device ( | |||
108 | * | 114 | * |
109 | * PARAMETERS: None | 115 | * PARAMETERS: None |
110 | * | 116 | * |
117 | * RETURN: None | ||
118 | * | ||
111 | * DESCRIPTION: Dump all objects of type "device" | 119 | * DESCRIPTION: Dump all objects of type "device" |
112 | * | 120 | * |
113 | ******************************************************************************/ | 121 | ******************************************************************************/ |
114 | 122 | ||
115 | void | 123 | void |
116 | acpi_ns_dump_root_devices (void) | 124 | acpi_ns_dump_root_devices ( |
125 | void) | ||
117 | { | 126 | { |
118 | acpi_handle sys_bus_handle; | 127 | acpi_handle sys_bus_handle; |
119 | acpi_status status; | 128 | acpi_status status; |
@@ -142,5 +151,6 @@ acpi_ns_dump_root_devices (void) | |||
142 | } | 151 | } |
143 | 152 | ||
144 | #endif | 153 | #endif |
154 | #endif | ||
145 | 155 | ||
146 | 156 | ||
diff --git a/drivers/acpi/namespace/nseval.c b/drivers/acpi/namespace/nseval.c index 0d008d53657e..1ae89a1c8826 100644 --- a/drivers/acpi/namespace/nseval.c +++ b/drivers/acpi/namespace/nseval.c | |||
@@ -52,19 +52,33 @@ | |||
52 | #define _COMPONENT ACPI_NAMESPACE | 52 | #define _COMPONENT ACPI_NAMESPACE |
53 | ACPI_MODULE_NAME ("nseval") | 53 | ACPI_MODULE_NAME ("nseval") |
54 | 54 | ||
55 | /* Local prototypes */ | ||
56 | |||
57 | static acpi_status | ||
58 | acpi_ns_execute_control_method ( | ||
59 | struct acpi_parameter_info *info); | ||
60 | |||
61 | static acpi_status | ||
62 | acpi_ns_get_object_value ( | ||
63 | struct acpi_parameter_info *info); | ||
64 | |||
55 | 65 | ||
56 | /******************************************************************************* | 66 | /******************************************************************************* |
57 | * | 67 | * |
58 | * FUNCTION: acpi_ns_evaluate_relative | 68 | * FUNCTION: acpi_ns_evaluate_relative |
59 | * | 69 | * |
60 | * PARAMETERS: Pathname - Name of method to execute, If NULL, the | 70 | * PARAMETERS: Pathname - Name of method to execute, If NULL, the |
61 | * handle is the object to execute | 71 | * handle is the object to execute |
62 | * Info - Method info block | 72 | * Info - Method info block, contains: |
73 | * return_object - Where to put method's return value (if | ||
74 | * any). If NULL, no value is returned. | ||
75 | * Params - List of parameters to pass to the method, | ||
76 | * terminated by NULL. Params itself may be | ||
77 | * NULL if no parameters are being passed. | ||
63 | * | 78 | * |
64 | * RETURN: Status | 79 | * RETURN: Status |
65 | * | 80 | * |
66 | * DESCRIPTION: Find and execute the requested method using the handle as a | 81 | * DESCRIPTION: Evaluate the object or find and execute the requested method |
67 | * scope | ||
68 | * | 82 | * |
69 | * MUTEX: Locks Namespace | 83 | * MUTEX: Locks Namespace |
70 | * | 84 | * |
@@ -157,8 +171,8 @@ cleanup1: | |||
157 | * | 171 | * |
158 | * FUNCTION: acpi_ns_evaluate_by_name | 172 | * FUNCTION: acpi_ns_evaluate_by_name |
159 | * | 173 | * |
160 | * PARAMETERS: Pathname - Fully qualified pathname to the object | 174 | * PARAMETERS: Pathname - Fully qualified pathname to the object |
161 | * Info - Contains: | 175 | * Info - Method info block, contains: |
162 | * return_object - Where to put method's return value (if | 176 | * return_object - Where to put method's return value (if |
163 | * any). If NULL, no value is returned. | 177 | * any). If NULL, no value is returned. |
164 | * Params - List of parameters to pass to the method, | 178 | * Params - List of parameters to pass to the method, |
@@ -167,8 +181,8 @@ cleanup1: | |||
167 | * | 181 | * |
168 | * RETURN: Status | 182 | * RETURN: Status |
169 | * | 183 | * |
170 | * DESCRIPTION: Find and execute the requested method passing the given | 184 | * DESCRIPTION: Evaluate the object or rind and execute the requested method |
171 | * parameters | 185 | * passing the given parameters |
172 | * | 186 | * |
173 | * MUTEX: Locks Namespace | 187 | * MUTEX: Locks Namespace |
174 | * | 188 | * |
@@ -241,17 +255,21 @@ cleanup: | |||
241 | * | 255 | * |
242 | * FUNCTION: acpi_ns_evaluate_by_handle | 256 | * FUNCTION: acpi_ns_evaluate_by_handle |
243 | * | 257 | * |
244 | * PARAMETERS: Handle - Method Node to execute | 258 | * PARAMETERS: Info - Method info block, contains: |
245 | * Params - List of parameters to pass to the method, | 259 | * Node - Method/Object Node to execute |
246 | * terminated by NULL. Params itself may be | 260 | * Parameters - List of parameters to pass to the method, |
261 | * terminated by NULL. Params itself may be | ||
247 | * NULL if no parameters are being passed. | 262 | * NULL if no parameters are being passed. |
248 | * param_type - Type of Parameter list | 263 | * return_object - Where to put method's return value (if |
249 | * return_object - Where to put method's return value (if | 264 | * any). If NULL, no value is returned. |
250 | * any). If NULL, no value is returned. | 265 | * parameter_type - Type of Parameter list |
266 | * return_object - Where to put method's return value (if | ||
267 | * any). If NULL, no value is returned. | ||
251 | * | 268 | * |
252 | * RETURN: Status | 269 | * RETURN: Status |
253 | * | 270 | * |
254 | * DESCRIPTION: Execute the requested method passing the given parameters | 271 | * DESCRIPTION: Evaluate object or execute the requested method passing the |
272 | * given parameters | ||
255 | * | 273 | * |
256 | * MUTEX: Locks Namespace | 274 | * MUTEX: Locks Namespace |
257 | * | 275 | * |
@@ -345,7 +363,16 @@ acpi_ns_evaluate_by_handle ( | |||
345 | * | 363 | * |
346 | * FUNCTION: acpi_ns_execute_control_method | 364 | * FUNCTION: acpi_ns_execute_control_method |
347 | * | 365 | * |
348 | * PARAMETERS: Info - Method info block (w/params) | 366 | * PARAMETERS: Info - Method info block, contains: |
367 | * Node - Method Node to execute | ||
368 | * Parameters - List of parameters to pass to the method, | ||
369 | * terminated by NULL. Params itself may be | ||
370 | * NULL if no parameters are being passed. | ||
371 | * return_object - Where to put method's return value (if | ||
372 | * any). If NULL, no value is returned. | ||
373 | * parameter_type - Type of Parameter list | ||
374 | * return_object - Where to put method's return value (if | ||
375 | * any). If NULL, no value is returned. | ||
349 | * | 376 | * |
350 | * RETURN: Status | 377 | * RETURN: Status |
351 | * | 378 | * |
@@ -355,7 +382,7 @@ acpi_ns_evaluate_by_handle ( | |||
355 | * | 382 | * |
356 | ******************************************************************************/ | 383 | ******************************************************************************/ |
357 | 384 | ||
358 | acpi_status | 385 | static acpi_status |
359 | acpi_ns_execute_control_method ( | 386 | acpi_ns_execute_control_method ( |
360 | struct acpi_parameter_info *info) | 387 | struct acpi_parameter_info *info) |
361 | { | 388 | { |
@@ -414,7 +441,10 @@ acpi_ns_execute_control_method ( | |||
414 | * | 441 | * |
415 | * FUNCTION: acpi_ns_get_object_value | 442 | * FUNCTION: acpi_ns_get_object_value |
416 | * | 443 | * |
417 | * PARAMETERS: Info - Method info block (w/params) | 444 | * PARAMETERS: Info - Method info block, contains: |
445 | * Node - Object's NS node | ||
446 | * return_object - Where to put object value (if | ||
447 | * any). If NULL, no value is returned. | ||
418 | * | 448 | * |
419 | * RETURN: Status | 449 | * RETURN: Status |
420 | * | 450 | * |
@@ -424,7 +454,7 @@ acpi_ns_execute_control_method ( | |||
424 | * | 454 | * |
425 | ******************************************************************************/ | 455 | ******************************************************************************/ |
426 | 456 | ||
427 | acpi_status | 457 | static acpi_status |
428 | acpi_ns_get_object_value ( | 458 | acpi_ns_get_object_value ( |
429 | struct acpi_parameter_info *info) | 459 | struct acpi_parameter_info *info) |
430 | { | 460 | { |
diff --git a/drivers/acpi/namespace/nsinit.c b/drivers/acpi/namespace/nsinit.c index 4a46b380605b..362802ae29a2 100644 --- a/drivers/acpi/namespace/nsinit.c +++ b/drivers/acpi/namespace/nsinit.c | |||
@@ -50,6 +50,22 @@ | |||
50 | #define _COMPONENT ACPI_NAMESPACE | 50 | #define _COMPONENT ACPI_NAMESPACE |
51 | ACPI_MODULE_NAME ("nsinit") | 51 | ACPI_MODULE_NAME ("nsinit") |
52 | 52 | ||
53 | /* Local prototypes */ | ||
54 | |||
55 | static acpi_status | ||
56 | acpi_ns_init_one_object ( | ||
57 | acpi_handle obj_handle, | ||
58 | u32 level, | ||
59 | void *context, | ||
60 | void **return_value); | ||
61 | |||
62 | static acpi_status | ||
63 | acpi_ns_init_one_device ( | ||
64 | acpi_handle obj_handle, | ||
65 | u32 nesting_level, | ||
66 | void *context, | ||
67 | void **return_value); | ||
68 | |||
53 | 69 | ||
54 | /******************************************************************************* | 70 | /******************************************************************************* |
55 | * | 71 | * |
@@ -191,7 +207,7 @@ acpi_ns_initialize_devices ( | |||
191 | * | 207 | * |
192 | ******************************************************************************/ | 208 | ******************************************************************************/ |
193 | 209 | ||
194 | acpi_status | 210 | static acpi_status |
195 | acpi_ns_init_one_object ( | 211 | acpi_ns_init_one_object ( |
196 | acpi_handle obj_handle, | 212 | acpi_handle obj_handle, |
197 | u32 level, | 213 | u32 level, |
@@ -331,7 +347,7 @@ acpi_ns_init_one_object ( | |||
331 | * | 347 | * |
332 | ******************************************************************************/ | 348 | ******************************************************************************/ |
333 | 349 | ||
334 | acpi_status | 350 | static acpi_status |
335 | acpi_ns_init_one_device ( | 351 | acpi_ns_init_one_device ( |
336 | acpi_handle obj_handle, | 352 | acpi_handle obj_handle, |
337 | u32 nesting_level, | 353 | u32 nesting_level, |
@@ -374,7 +390,8 @@ acpi_ns_init_one_device ( | |||
374 | /* | 390 | /* |
375 | * Run _STA to determine if we can run _INI on the device. | 391 | * Run _STA to determine if we can run _INI on the device. |
376 | */ | 392 | */ |
377 | ACPI_DEBUG_EXEC (acpi_ut_display_init_pathname (ACPI_TYPE_METHOD, pinfo.node, "_STA")); | 393 | ACPI_DEBUG_EXEC (acpi_ut_display_init_pathname (ACPI_TYPE_METHOD, |
394 | pinfo.node, METHOD_NAME__STA)); | ||
378 | status = acpi_ut_execute_STA (pinfo.node, &flags); | 395 | status = acpi_ut_execute_STA (pinfo.node, &flags); |
379 | 396 | ||
380 | if (ACPI_FAILURE (status)) { | 397 | if (ACPI_FAILURE (status)) { |
@@ -399,8 +416,9 @@ acpi_ns_init_one_device ( | |||
399 | /* | 416 | /* |
400 | * The device is present. Run _INI. | 417 | * The device is present. Run _INI. |
401 | */ | 418 | */ |
402 | ACPI_DEBUG_EXEC (acpi_ut_display_init_pathname (ACPI_TYPE_METHOD, pinfo.node, "_INI")); | 419 | ACPI_DEBUG_EXEC (acpi_ut_display_init_pathname (ACPI_TYPE_METHOD, |
403 | status = acpi_ns_evaluate_relative ("_INI", &pinfo); | 420 | pinfo.node, METHOD_NAME__INI)); |
421 | status = acpi_ns_evaluate_relative (METHOD_NAME__INI, &pinfo); | ||
404 | if (ACPI_FAILURE (status)) { | 422 | if (ACPI_FAILURE (status)) { |
405 | /* No _INI (AE_NOT_FOUND) means device requires no initialization */ | 423 | /* No _INI (AE_NOT_FOUND) means device requires no initialization */ |
406 | 424 | ||
diff --git a/drivers/acpi/namespace/nsload.c b/drivers/acpi/namespace/nsload.c index 1d7aedf68a77..34e497016601 100644 --- a/drivers/acpi/namespace/nsload.c +++ b/drivers/acpi/namespace/nsload.c | |||
@@ -50,9 +50,24 @@ | |||
50 | #define _COMPONENT ACPI_NAMESPACE | 50 | #define _COMPONENT ACPI_NAMESPACE |
51 | ACPI_MODULE_NAME ("nsload") | 51 | ACPI_MODULE_NAME ("nsload") |
52 | 52 | ||
53 | /* Local prototypes */ | ||
53 | 54 | ||
54 | #ifndef ACPI_NO_METHOD_EXECUTION | 55 | static acpi_status |
56 | acpi_ns_load_table_by_type ( | ||
57 | acpi_table_type table_type); | ||
58 | |||
59 | #ifdef ACPI_FUTURE_IMPLEMENTATION | ||
60 | acpi_status | ||
61 | acpi_ns_unload_namespace ( | ||
62 | acpi_handle handle); | ||
63 | |||
64 | static acpi_status | ||
65 | acpi_ns_delete_subtree ( | ||
66 | acpi_handle start_handle); | ||
67 | #endif | ||
55 | 68 | ||
69 | |||
70 | #ifndef ACPI_NO_METHOD_EXECUTION | ||
56 | /******************************************************************************* | 71 | /******************************************************************************* |
57 | * | 72 | * |
58 | * FUNCTION: acpi_ns_load_table | 73 | * FUNCTION: acpi_ns_load_table |
@@ -159,7 +174,7 @@ acpi_ns_load_table ( | |||
159 | * | 174 | * |
160 | ******************************************************************************/ | 175 | ******************************************************************************/ |
161 | 176 | ||
162 | acpi_status | 177 | static acpi_status |
163 | acpi_ns_load_table_by_type ( | 178 | acpi_ns_load_table_by_type ( |
164 | acpi_table_type table_type) | 179 | acpi_table_type table_type) |
165 | { | 180 | { |
@@ -321,8 +336,7 @@ acpi_ns_load_namespace ( | |||
321 | } | 336 | } |
322 | 337 | ||
323 | 338 | ||
324 | #ifdef ACPI_FUTURE_USAGE | 339 | #ifdef ACPI_FUTURE_IMPLEMENTATION |
325 | |||
326 | /******************************************************************************* | 340 | /******************************************************************************* |
327 | * | 341 | * |
328 | * FUNCTION: acpi_ns_delete_subtree | 342 | * FUNCTION: acpi_ns_delete_subtree |
@@ -339,7 +353,7 @@ acpi_ns_load_namespace ( | |||
339 | * | 353 | * |
340 | ******************************************************************************/ | 354 | ******************************************************************************/ |
341 | 355 | ||
342 | acpi_status | 356 | static acpi_status |
343 | acpi_ns_delete_subtree ( | 357 | acpi_ns_delete_subtree ( |
344 | acpi_handle start_handle) | 358 | acpi_handle start_handle) |
345 | { | 359 | { |
@@ -453,8 +467,6 @@ acpi_ns_unload_namespace ( | |||
453 | 467 | ||
454 | return_ACPI_STATUS (status); | 468 | return_ACPI_STATUS (status); |
455 | } | 469 | } |
456 | 470 | #endif | |
457 | #endif /* ACPI_FUTURE_USAGE */ | ||
458 | |||
459 | #endif | 471 | #endif |
460 | 472 | ||
diff --git a/drivers/acpi/namespace/nsnames.c b/drivers/acpi/namespace/nsnames.c index b6f8f910eff0..d8ce7e39795f 100644 --- a/drivers/acpi/namespace/nsnames.c +++ b/drivers/acpi/namespace/nsnames.c | |||
@@ -50,6 +50,14 @@ | |||
50 | #define _COMPONENT ACPI_NAMESPACE | 50 | #define _COMPONENT ACPI_NAMESPACE |
51 | ACPI_MODULE_NAME ("nsnames") | 51 | ACPI_MODULE_NAME ("nsnames") |
52 | 52 | ||
53 | /* Local prototypes */ | ||
54 | |||
55 | static void | ||
56 | acpi_ns_build_external_path ( | ||
57 | struct acpi_namespace_node *node, | ||
58 | acpi_size size, | ||
59 | char *name_buffer); | ||
60 | |||
53 | 61 | ||
54 | /******************************************************************************* | 62 | /******************************************************************************* |
55 | * | 63 | * |
@@ -66,7 +74,7 @@ | |||
66 | * | 74 | * |
67 | ******************************************************************************/ | 75 | ******************************************************************************/ |
68 | 76 | ||
69 | void | 77 | static void |
70 | acpi_ns_build_external_path ( | 78 | acpi_ns_build_external_path ( |
71 | struct acpi_namespace_node *node, | 79 | struct acpi_namespace_node *node, |
72 | acpi_size size, | 80 | acpi_size size, |
@@ -126,7 +134,7 @@ acpi_ns_build_external_path ( | |||
126 | * | 134 | * |
127 | * FUNCTION: acpi_ns_get_external_pathname | 135 | * FUNCTION: acpi_ns_get_external_pathname |
128 | * | 136 | * |
129 | * PARAMETERS: Node - NS node whose pathname is needed | 137 | * PARAMETERS: Node - Namespace node whose pathname is needed |
130 | * | 138 | * |
131 | * RETURN: Pointer to storage containing the fully qualified name of | 139 | * RETURN: Pointer to storage containing the fully qualified name of |
132 | * the node, In external format (name segments separated by path | 140 | * the node, In external format (name segments separated by path |
diff --git a/drivers/acpi/namespace/nsobject.c b/drivers/acpi/namespace/nsobject.c index 4e41e66db61f..27258c1ca4f1 100644 --- a/drivers/acpi/namespace/nsobject.c +++ b/drivers/acpi/namespace/nsobject.c | |||
@@ -60,6 +60,8 @@ | |||
60 | * Type - Type of object, or ACPI_TYPE_ANY if not | 60 | * Type - Type of object, or ACPI_TYPE_ANY if not |
61 | * known | 61 | * known |
62 | * | 62 | * |
63 | * RETURN: Status | ||
64 | * | ||
63 | * DESCRIPTION: Record the given object as the value associated with the | 65 | * DESCRIPTION: Record the given object as the value associated with the |
64 | * name whose acpi_handle is passed. If Object is NULL | 66 | * name whose acpi_handle is passed. If Object is NULL |
65 | * and Type is ACPI_TYPE_ANY, set the name as having no value. | 67 | * and Type is ACPI_TYPE_ANY, set the name as having no value. |
@@ -97,7 +99,8 @@ acpi_ns_attach_object ( | |||
97 | if (!object && (ACPI_TYPE_ANY != type)) { | 99 | if (!object && (ACPI_TYPE_ANY != type)) { |
98 | /* Null object */ | 100 | /* Null object */ |
99 | 101 | ||
100 | ACPI_REPORT_ERROR (("ns_attach_object: Null object, but type not ACPI_TYPE_ANY\n")); | 102 | ACPI_REPORT_ERROR (( |
103 | "ns_attach_object: Null object, but type not ACPI_TYPE_ANY\n")); | ||
101 | return_ACPI_STATUS (AE_BAD_PARAMETER); | 104 | return_ACPI_STATUS (AE_BAD_PARAMETER); |
102 | } | 105 | } |
103 | 106 | ||
@@ -112,7 +115,8 @@ acpi_ns_attach_object ( | |||
112 | /* Check if this object is already attached */ | 115 | /* Check if this object is already attached */ |
113 | 116 | ||
114 | if (node->object == object) { | 117 | if (node->object == object) { |
115 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "Obj %p already installed in name_obj %p\n", | 118 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, |
119 | "Obj %p already installed in name_obj %p\n", | ||
116 | object, node)); | 120 | object, node)); |
117 | 121 | ||
118 | return_ACPI_STATUS (AE_OK); | 122 | return_ACPI_STATUS (AE_OK); |
@@ -192,7 +196,7 @@ acpi_ns_attach_object ( | |||
192 | * | 196 | * |
193 | * FUNCTION: acpi_ns_detach_object | 197 | * FUNCTION: acpi_ns_detach_object |
194 | * | 198 | * |
195 | * PARAMETERS: Node - An node whose object will be detached | 199 | * PARAMETERS: Node - A Namespace node whose object will be detached |
196 | * | 200 | * |
197 | * RETURN: None. | 201 | * RETURN: None. |
198 | * | 202 | * |
@@ -248,7 +252,7 @@ acpi_ns_detach_object ( | |||
248 | * | 252 | * |
249 | * FUNCTION: acpi_ns_get_attached_object | 253 | * FUNCTION: acpi_ns_get_attached_object |
250 | * | 254 | * |
251 | * PARAMETERS: Node - Parent Node to be examined | 255 | * PARAMETERS: Node - Namespace node |
252 | * | 256 | * |
253 | * RETURN: Current value of the object field from the Node whose | 257 | * RETURN: Current value of the object field from the Node whose |
254 | * handle is passed | 258 | * handle is passed |
@@ -284,7 +288,7 @@ acpi_ns_get_attached_object ( | |||
284 | * | 288 | * |
285 | * FUNCTION: acpi_ns_get_secondary_object | 289 | * FUNCTION: acpi_ns_get_secondary_object |
286 | * | 290 | * |
287 | * PARAMETERS: Node - Parent Node to be examined | 291 | * PARAMETERS: Node - Namespace node |
288 | * | 292 | * |
289 | * RETURN: Current value of the object field from the Node whose | 293 | * RETURN: Current value of the object field from the Node whose |
290 | * handle is passed. | 294 | * handle is passed. |
diff --git a/drivers/acpi/namespace/nssearch.c b/drivers/acpi/namespace/nssearch.c index 0e6dea23603b..af8aaa9cc4f3 100644 --- a/drivers/acpi/namespace/nssearch.c +++ b/drivers/acpi/namespace/nssearch.c | |||
@@ -49,15 +49,24 @@ | |||
49 | #define _COMPONENT ACPI_NAMESPACE | 49 | #define _COMPONENT ACPI_NAMESPACE |
50 | ACPI_MODULE_NAME ("nssearch") | 50 | ACPI_MODULE_NAME ("nssearch") |
51 | 51 | ||
52 | /* Local prototypes */ | ||
53 | |||
54 | static acpi_status | ||
55 | acpi_ns_search_parent_tree ( | ||
56 | u32 target_name, | ||
57 | struct acpi_namespace_node *node, | ||
58 | acpi_object_type type, | ||
59 | struct acpi_namespace_node **return_node); | ||
60 | |||
52 | 61 | ||
53 | /******************************************************************************* | 62 | /******************************************************************************* |
54 | * | 63 | * |
55 | * FUNCTION: acpi_ns_search_node | 64 | * FUNCTION: acpi_ns_search_node |
56 | * | 65 | * |
57 | * PARAMETERS: *target_name - Ascii ACPI name to search for | 66 | * PARAMETERS: target_name - Ascii ACPI name to search for |
58 | * *Node - Starting node where search will begin | 67 | * Node - Starting node where search will begin |
59 | * Type - Object type to match | 68 | * Type - Object type to match |
60 | * **return_node - Where the matched Named obj is returned | 69 | * return_node - Where the matched Named obj is returned |
61 | * | 70 | * |
62 | * RETURN: Status | 71 | * RETURN: Status |
63 | * | 72 | * |
@@ -163,10 +172,10 @@ acpi_ns_search_node ( | |||
163 | * | 172 | * |
164 | * FUNCTION: acpi_ns_search_parent_tree | 173 | * FUNCTION: acpi_ns_search_parent_tree |
165 | * | 174 | * |
166 | * PARAMETERS: *target_name - Ascii ACPI name to search for | 175 | * PARAMETERS: target_name - Ascii ACPI name to search for |
167 | * *Node - Starting node where search will begin | 176 | * Node - Starting node where search will begin |
168 | * Type - Object type to match | 177 | * Type - Object type to match |
169 | * **return_node - Where the matched Node is returned | 178 | * return_node - Where the matched Node is returned |
170 | * | 179 | * |
171 | * RETURN: Status | 180 | * RETURN: Status |
172 | * | 181 | * |
@@ -257,12 +266,12 @@ acpi_ns_search_parent_tree ( | |||
257 | * | 266 | * |
258 | * PARAMETERS: target_name - Ascii ACPI name to search for (4 chars) | 267 | * PARAMETERS: target_name - Ascii ACPI name to search for (4 chars) |
259 | * walk_state - Current state of the walk | 268 | * walk_state - Current state of the walk |
260 | * *Node - Starting node where search will begin | 269 | * Node - Starting node where search will begin |
261 | * interpreter_mode - Add names only in ACPI_MODE_LOAD_PASS_x. | 270 | * interpreter_mode - Add names only in ACPI_MODE_LOAD_PASS_x. |
262 | * Otherwise,search only. | 271 | * Otherwise,search only. |
263 | * Type - Object type to match | 272 | * Type - Object type to match |
264 | * Flags - Flags describing the search restrictions | 273 | * Flags - Flags describing the search restrictions |
265 | * **return_node - Where the Node is returned | 274 | * return_node - Where the Node is returned |
266 | * | 275 | * |
267 | * RETURN: Status | 276 | * RETURN: Status |
268 | * | 277 | * |
diff --git a/drivers/acpi/namespace/nsutils.c b/drivers/acpi/namespace/nsutils.c index 75da76cc0b19..c53b82e94ce3 100644 --- a/drivers/acpi/namespace/nsutils.c +++ b/drivers/acpi/namespace/nsutils.c | |||
@@ -51,6 +51,18 @@ | |||
51 | #define _COMPONENT ACPI_NAMESPACE | 51 | #define _COMPONENT ACPI_NAMESPACE |
52 | ACPI_MODULE_NAME ("nsutils") | 52 | ACPI_MODULE_NAME ("nsutils") |
53 | 53 | ||
54 | /* Local prototypes */ | ||
55 | |||
56 | static u8 | ||
57 | acpi_ns_valid_path_separator ( | ||
58 | char sep); | ||
59 | |||
60 | #ifdef ACPI_OBSOLETE_FUNCTIONS | ||
61 | acpi_name | ||
62 | acpi_ns_find_parent_name ( | ||
63 | struct acpi_namespace_node *node_to_search); | ||
64 | #endif | ||
65 | |||
54 | 66 | ||
55 | /******************************************************************************* | 67 | /******************************************************************************* |
56 | * | 68 | * |
@@ -59,7 +71,8 @@ | |||
59 | * PARAMETERS: module_name - Caller's module name (for error output) | 71 | * PARAMETERS: module_name - Caller's module name (for error output) |
60 | * line_number - Caller's line number (for error output) | 72 | * line_number - Caller's line number (for error output) |
61 | * component_id - Caller's component ID (for error output) | 73 | * component_id - Caller's component ID (for error output) |
62 | * Message - Error message to use on failure | 74 | * internal_name - Name or path of the namespace node |
75 | * lookup_status - Exception code from NS lookup | ||
63 | * | 76 | * |
64 | * RETURN: None | 77 | * RETURN: None |
65 | * | 78 | * |
@@ -121,6 +134,9 @@ acpi_ns_report_error ( | |||
121 | * line_number - Caller's line number (for error output) | 134 | * line_number - Caller's line number (for error output) |
122 | * component_id - Caller's component ID (for error output) | 135 | * component_id - Caller's component ID (for error output) |
123 | * Message - Error message to use on failure | 136 | * Message - Error message to use on failure |
137 | * prefix_node - Prefix relative to the path | ||
138 | * Path - Path to the node | ||
139 | * method_status - Execution status | ||
124 | * | 140 | * |
125 | * RETURN: None | 141 | * RETURN: None |
126 | * | 142 | * |
@@ -161,8 +177,8 @@ acpi_ns_report_method_error ( | |||
161 | * | 177 | * |
162 | * FUNCTION: acpi_ns_print_node_pathname | 178 | * FUNCTION: acpi_ns_print_node_pathname |
163 | * | 179 | * |
164 | * PARAMETERS: Node - Object | 180 | * PARAMETERS: Node - Object |
165 | * Msg - Prefix message | 181 | * Message - Prefix message |
166 | * | 182 | * |
167 | * DESCRIPTION: Print an object's full namespace pathname | 183 | * DESCRIPTION: Print an object's full namespace pathname |
168 | * Manages allocation/freeing of a pathname buffer | 184 | * Manages allocation/freeing of a pathname buffer |
@@ -172,7 +188,7 @@ acpi_ns_report_method_error ( | |||
172 | void | 188 | void |
173 | acpi_ns_print_node_pathname ( | 189 | acpi_ns_print_node_pathname ( |
174 | struct acpi_namespace_node *node, | 190 | struct acpi_namespace_node *node, |
175 | char *msg) | 191 | char *message) |
176 | { | 192 | { |
177 | struct acpi_buffer buffer; | 193 | struct acpi_buffer buffer; |
178 | acpi_status status; | 194 | acpi_status status; |
@@ -189,8 +205,8 @@ acpi_ns_print_node_pathname ( | |||
189 | 205 | ||
190 | status = acpi_ns_handle_to_pathname (node, &buffer); | 206 | status = acpi_ns_handle_to_pathname (node, &buffer); |
191 | if (ACPI_SUCCESS (status)) { | 207 | if (ACPI_SUCCESS (status)) { |
192 | if (msg) { | 208 | if (message) { |
193 | acpi_os_printf ("%s ", msg); | 209 | acpi_os_printf ("%s ", message); |
194 | } | 210 | } |
195 | 211 | ||
196 | acpi_os_printf ("[%s] (Node %p)", (char *) buffer.pointer, node); | 212 | acpi_os_printf ("[%s] (Node %p)", (char *) buffer.pointer, node); |
@@ -224,7 +240,7 @@ acpi_ns_valid_root_prefix ( | |||
224 | * | 240 | * |
225 | * FUNCTION: acpi_ns_valid_path_separator | 241 | * FUNCTION: acpi_ns_valid_path_separator |
226 | * | 242 | * |
227 | * PARAMETERS: Sep - Character to be checked | 243 | * PARAMETERS: Sep - Character to be checked |
228 | * | 244 | * |
229 | * RETURN: TRUE if a valid path separator | 245 | * RETURN: TRUE if a valid path separator |
230 | * | 246 | * |
@@ -232,7 +248,7 @@ acpi_ns_valid_root_prefix ( | |||
232 | * | 248 | * |
233 | ******************************************************************************/ | 249 | ******************************************************************************/ |
234 | 250 | ||
235 | u8 | 251 | static u8 |
236 | acpi_ns_valid_path_separator ( | 252 | acpi_ns_valid_path_separator ( |
237 | char sep) | 253 | char sep) |
238 | { | 254 | { |
@@ -245,10 +261,12 @@ acpi_ns_valid_path_separator ( | |||
245 | * | 261 | * |
246 | * FUNCTION: acpi_ns_get_type | 262 | * FUNCTION: acpi_ns_get_type |
247 | * | 263 | * |
248 | * PARAMETERS: Handle - Parent Node to be examined | 264 | * PARAMETERS: Node - Parent Node to be examined |
249 | * | 265 | * |
250 | * RETURN: Type field from Node whose handle is passed | 266 | * RETURN: Type field from Node whose handle is passed |
251 | * | 267 | * |
268 | * DESCRIPTION: Return the type of a Namespace node | ||
269 | * | ||
252 | ******************************************************************************/ | 270 | ******************************************************************************/ |
253 | 271 | ||
254 | acpi_object_type | 272 | acpi_object_type |
@@ -271,11 +289,13 @@ acpi_ns_get_type ( | |||
271 | * | 289 | * |
272 | * FUNCTION: acpi_ns_local | 290 | * FUNCTION: acpi_ns_local |
273 | * | 291 | * |
274 | * PARAMETERS: Type - A namespace object type | 292 | * PARAMETERS: Type - A namespace object type |
275 | * | 293 | * |
276 | * RETURN: LOCAL if names must be found locally in objects of the | 294 | * RETURN: LOCAL if names must be found locally in objects of the |
277 | * passed type, 0 if enclosing scopes should be searched | 295 | * passed type, 0 if enclosing scopes should be searched |
278 | * | 296 | * |
297 | * DESCRIPTION: Returns scope rule for the given object type. | ||
298 | * | ||
279 | ******************************************************************************/ | 299 | ******************************************************************************/ |
280 | 300 | ||
281 | u32 | 301 | u32 |
@@ -303,7 +323,7 @@ acpi_ns_local ( | |||
303 | * PARAMETERS: Info - Info struct initialized with the | 323 | * PARAMETERS: Info - Info struct initialized with the |
304 | * external name pointer. | 324 | * external name pointer. |
305 | * | 325 | * |
306 | * RETURN: Status | 326 | * RETURN: None |
307 | * | 327 | * |
308 | * DESCRIPTION: Calculate the length of the internal (AML) namestring | 328 | * DESCRIPTION: Calculate the length of the internal (AML) namestring |
309 | * corresponding to the external (ASL) namestring. | 329 | * corresponding to the external (ASL) namestring. |
@@ -551,14 +571,16 @@ acpi_ns_internalize_name ( | |||
551 | * | 571 | * |
552 | * FUNCTION: acpi_ns_externalize_name | 572 | * FUNCTION: acpi_ns_externalize_name |
553 | * | 573 | * |
554 | * PARAMETERS: *internal_name - Internal representation of name | 574 | * PARAMETERS: internal_name_length - Lenth of the internal name below |
555 | * **converted_name - Where to return the resulting | 575 | * internal_name - Internal representation of name |
556 | * external representation of name | 576 | * converted_name_length - Where the length is returned |
577 | * converted_name - Where the resulting external name | ||
578 | * is returned | ||
557 | * | 579 | * |
558 | * RETURN: Status | 580 | * RETURN: Status |
559 | * | 581 | * |
560 | * DESCRIPTION: Convert internal name (e.g. 5c 2f 02 5f 50 52 5f 43 50 55 30) | 582 | * DESCRIPTION: Convert internal name (e.g. 5c 2f 02 5f 50 52 5f 43 50 55 30) |
561 | * to its external form (e.g. "\_PR_.CPU0") | 583 | * to its external (printable) form (e.g. "\_PR_.CPU0") |
562 | * | 584 | * |
563 | ******************************************************************************/ | 585 | ******************************************************************************/ |
564 | 586 | ||
@@ -717,8 +739,9 @@ acpi_ns_externalize_name ( | |||
717 | * | 739 | * |
718 | * DESCRIPTION: Convert a namespace handle to a real Node | 740 | * DESCRIPTION: Convert a namespace handle to a real Node |
719 | * | 741 | * |
720 | * Note: Real integer handles allow for more verification | 742 | * Note: Real integer handles would allow for more verification |
721 | * and keep all pointers within this subsystem. | 743 | * and keep all pointers within this subsystem - however this introduces |
744 | * more (and perhaps unnecessary) overhead. | ||
722 | * | 745 | * |
723 | ******************************************************************************/ | 746 | ******************************************************************************/ |
724 | 747 | ||
@@ -775,7 +798,7 @@ acpi_ns_convert_entry_to_handle ( | |||
775 | return ((acpi_handle) node); | 798 | return ((acpi_handle) node); |
776 | 799 | ||
777 | 800 | ||
778 | /* --------------------------------------------------- | 801 | /* Example future implementation --------------------- |
779 | 802 | ||
780 | if (!Node) | 803 | if (!Node) |
781 | { | 804 | { |
@@ -801,12 +824,13 @@ acpi_ns_convert_entry_to_handle ( | |||
801 | * | 824 | * |
802 | * RETURN: none | 825 | * RETURN: none |
803 | * | 826 | * |
804 | * DESCRIPTION: free memory allocated for table storage. | 827 | * DESCRIPTION: free memory allocated for namespace and ACPI table storage. |
805 | * | 828 | * |
806 | ******************************************************************************/ | 829 | ******************************************************************************/ |
807 | 830 | ||
808 | void | 831 | void |
809 | acpi_ns_terminate (void) | 832 | acpi_ns_terminate ( |
833 | void) | ||
810 | { | 834 | { |
811 | union acpi_operand_object *obj_desc; | 835 | union acpi_operand_object *obj_desc; |
812 | 836 | ||
@@ -940,7 +964,6 @@ acpi_ns_get_node_by_path ( | |||
940 | (void) acpi_ut_release_mutex (ACPI_MTX_NAMESPACE); | 964 | (void) acpi_ut_release_mutex (ACPI_MTX_NAMESPACE); |
941 | 965 | ||
942 | cleanup: | 966 | cleanup: |
943 | /* Cleanup */ | ||
944 | if (internal_path) { | 967 | if (internal_path) { |
945 | ACPI_MEM_FREE (internal_path); | 968 | ACPI_MEM_FREE (internal_path); |
946 | } | 969 | } |
@@ -950,55 +973,6 @@ cleanup: | |||
950 | 973 | ||
951 | /******************************************************************************* | 974 | /******************************************************************************* |
952 | * | 975 | * |
953 | * FUNCTION: acpi_ns_find_parent_name | ||
954 | * | ||
955 | * PARAMETERS: *child_node - Named Obj whose name is to be found | ||
956 | * | ||
957 | * RETURN: The ACPI name | ||
958 | * | ||
959 | * DESCRIPTION: Search for the given obj in its parent scope and return the | ||
960 | * name segment, or "????" if the parent name can't be found | ||
961 | * (which "should not happen"). | ||
962 | * | ||
963 | ******************************************************************************/ | ||
964 | #ifdef ACPI_FUTURE_USAGE | ||
965 | acpi_name | ||
966 | acpi_ns_find_parent_name ( | ||
967 | struct acpi_namespace_node *child_node) | ||
968 | { | ||
969 | struct acpi_namespace_node *parent_node; | ||
970 | |||
971 | |||
972 | ACPI_FUNCTION_TRACE ("ns_find_parent_name"); | ||
973 | |||
974 | |||
975 | if (child_node) { | ||
976 | /* Valid entry. Get the parent Node */ | ||
977 | |||
978 | parent_node = acpi_ns_get_parent_node (child_node); | ||
979 | if (parent_node) { | ||
980 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, | ||
981 | "Parent of %p [%4.4s] is %p [%4.4s]\n", | ||
982 | child_node, acpi_ut_get_node_name (child_node), | ||
983 | parent_node, acpi_ut_get_node_name (parent_node))); | ||
984 | |||
985 | if (parent_node->name.integer) { | ||
986 | return_VALUE ((acpi_name) parent_node->name.integer); | ||
987 | } | ||
988 | } | ||
989 | |||
990 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, | ||
991 | "Unable to find parent of %p (%4.4s)\n", | ||
992 | child_node, acpi_ut_get_node_name (child_node))); | ||
993 | } | ||
994 | |||
995 | return_VALUE (ACPI_UNKNOWN_NAME); | ||
996 | } | ||
997 | #endif | ||
998 | |||
999 | |||
1000 | /******************************************************************************* | ||
1001 | * | ||
1002 | * FUNCTION: acpi_ns_get_parent_node | 976 | * FUNCTION: acpi_ns_get_parent_node |
1003 | * | 977 | * |
1004 | * PARAMETERS: Node - Current table entry | 978 | * PARAMETERS: Node - Current table entry |
@@ -1009,7 +983,6 @@ acpi_ns_find_parent_name ( | |||
1009 | * | 983 | * |
1010 | ******************************************************************************/ | 984 | ******************************************************************************/ |
1011 | 985 | ||
1012 | |||
1013 | struct acpi_namespace_node * | 986 | struct acpi_namespace_node * |
1014 | acpi_ns_get_parent_node ( | 987 | acpi_ns_get_parent_node ( |
1015 | struct acpi_namespace_node *node) | 988 | struct acpi_namespace_node *node) |
@@ -1030,7 +1003,6 @@ acpi_ns_get_parent_node ( | |||
1030 | node = node->peer; | 1003 | node = node->peer; |
1031 | } | 1004 | } |
1032 | 1005 | ||
1033 | |||
1034 | return (node->peer); | 1006 | return (node->peer); |
1035 | } | 1007 | } |
1036 | 1008 | ||
@@ -1049,7 +1021,6 @@ acpi_ns_get_parent_node ( | |||
1049 | * | 1021 | * |
1050 | ******************************************************************************/ | 1022 | ******************************************************************************/ |
1051 | 1023 | ||
1052 | |||
1053 | struct acpi_namespace_node * | 1024 | struct acpi_namespace_node * |
1054 | acpi_ns_get_next_valid_node ( | 1025 | acpi_ns_get_next_valid_node ( |
1055 | struct acpi_namespace_node *node) | 1026 | struct acpi_namespace_node *node) |
@@ -1067,3 +1038,53 @@ acpi_ns_get_next_valid_node ( | |||
1067 | } | 1038 | } |
1068 | 1039 | ||
1069 | 1040 | ||
1041 | #ifdef ACPI_OBSOLETE_FUNCTIONS | ||
1042 | /******************************************************************************* | ||
1043 | * | ||
1044 | * FUNCTION: acpi_ns_find_parent_name | ||
1045 | * | ||
1046 | * PARAMETERS: *child_node - Named Obj whose name is to be found | ||
1047 | * | ||
1048 | * RETURN: The ACPI name | ||
1049 | * | ||
1050 | * DESCRIPTION: Search for the given obj in its parent scope and return the | ||
1051 | * name segment, or "????" if the parent name can't be found | ||
1052 | * (which "should not happen"). | ||
1053 | * | ||
1054 | ******************************************************************************/ | ||
1055 | |||
1056 | acpi_name | ||
1057 | acpi_ns_find_parent_name ( | ||
1058 | struct acpi_namespace_node *child_node) | ||
1059 | { | ||
1060 | struct acpi_namespace_node *parent_node; | ||
1061 | |||
1062 | |||
1063 | ACPI_FUNCTION_TRACE ("ns_find_parent_name"); | ||
1064 | |||
1065 | |||
1066 | if (child_node) { | ||
1067 | /* Valid entry. Get the parent Node */ | ||
1068 | |||
1069 | parent_node = acpi_ns_get_parent_node (child_node); | ||
1070 | if (parent_node) { | ||
1071 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, | ||
1072 | "Parent of %p [%4.4s] is %p [%4.4s]\n", | ||
1073 | child_node, acpi_ut_get_node_name (child_node), | ||
1074 | parent_node, acpi_ut_get_node_name (parent_node))); | ||
1075 | |||
1076 | if (parent_node->name.integer) { | ||
1077 | return_VALUE ((acpi_name) parent_node->name.integer); | ||
1078 | } | ||
1079 | } | ||
1080 | |||
1081 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, | ||
1082 | "Unable to find parent of %p (%4.4s)\n", | ||
1083 | child_node, acpi_ut_get_node_name (child_node))); | ||
1084 | } | ||
1085 | |||
1086 | return_VALUE (ACPI_UNKNOWN_NAME); | ||
1087 | } | ||
1088 | #endif | ||
1089 | |||
1090 | |||
diff --git a/drivers/acpi/namespace/nswalk.c b/drivers/acpi/namespace/nswalk.c index 4de2444df300..f9a7277dca6e 100644 --- a/drivers/acpi/namespace/nswalk.c +++ b/drivers/acpi/namespace/nswalk.c | |||
@@ -56,7 +56,7 @@ | |||
56 | * | 56 | * |
57 | * PARAMETERS: Type - Type of node to be searched for | 57 | * PARAMETERS: Type - Type of node to be searched for |
58 | * parent_node - Parent node whose children we are | 58 | * parent_node - Parent node whose children we are |
59 | * getting | 59 | * getting |
60 | * child_node - Previous child that was found. | 60 | * child_node - Previous child that was found. |
61 | * The NEXT child will be returned | 61 | * The NEXT child will be returned |
62 | * | 62 | * |
diff --git a/drivers/acpi/namespace/nsxfeval.c b/drivers/acpi/namespace/nsxfeval.c index 1dc995586cbe..12ea202257fa 100644 --- a/drivers/acpi/namespace/nsxfeval.c +++ b/drivers/acpi/namespace/nsxfeval.c | |||
@@ -58,11 +58,11 @@ | |||
58 | * FUNCTION: acpi_evaluate_object_typed | 58 | * FUNCTION: acpi_evaluate_object_typed |
59 | * | 59 | * |
60 | * PARAMETERS: Handle - Object handle (optional) | 60 | * PARAMETERS: Handle - Object handle (optional) |
61 | * *Pathname - Object pathname (optional) | 61 | * Pathname - Object pathname (optional) |
62 | * **external_params - List of parameters to pass to method, | 62 | * external_params - List of parameters to pass to method, |
63 | * terminated by NULL. May be NULL | 63 | * terminated by NULL. May be NULL |
64 | * if no parameters are being passed. | 64 | * if no parameters are being passed. |
65 | * *return_buffer - Where to put method's return value (if | 65 | * return_buffer - Where to put method's return value (if |
66 | * any). If NULL, no value is returned. | 66 | * any). If NULL, no value is returned. |
67 | * return_type - Expected type of return object | 67 | * return_type - Expected type of return object |
68 | * | 68 | * |
@@ -73,6 +73,7 @@ | |||
73 | * be valid (non-null) | 73 | * be valid (non-null) |
74 | * | 74 | * |
75 | ******************************************************************************/ | 75 | ******************************************************************************/ |
76 | |||
76 | #ifdef ACPI_FUTURE_USAGE | 77 | #ifdef ACPI_FUTURE_USAGE |
77 | acpi_status | 78 | acpi_status |
78 | acpi_evaluate_object_typed ( | 79 | acpi_evaluate_object_typed ( |
@@ -307,7 +308,8 @@ acpi_evaluate_object ( | |||
307 | if (ACPI_SUCCESS (status)) { | 308 | if (ACPI_SUCCESS (status)) { |
308 | /* Validate/Allocate/Clear caller buffer */ | 309 | /* Validate/Allocate/Clear caller buffer */ |
309 | 310 | ||
310 | status = acpi_ut_initialize_buffer (return_buffer, buffer_space_needed); | 311 | status = acpi_ut_initialize_buffer (return_buffer, |
312 | buffer_space_needed); | ||
311 | if (ACPI_FAILURE (status)) { | 313 | if (ACPI_FAILURE (status)) { |
312 | /* | 314 | /* |
313 | * Caller's buffer is too small or a new one can't be allocated | 315 | * Caller's buffer is too small or a new one can't be allocated |
@@ -423,7 +425,8 @@ acpi_walk_namespace ( | |||
423 | return_ACPI_STATUS (status); | 425 | return_ACPI_STATUS (status); |
424 | } | 426 | } |
425 | 427 | ||
426 | status = acpi_ns_walk_namespace (type, start_object, max_depth, ACPI_NS_WALK_UNLOCK, | 428 | status = acpi_ns_walk_namespace (type, start_object, max_depth, |
429 | ACPI_NS_WALK_UNLOCK, | ||
427 | user_function, context, return_value); | 430 | user_function, context, return_value); |
428 | 431 | ||
429 | (void) acpi_ut_release_mutex (ACPI_MTX_NAMESPACE); | 432 | (void) acpi_ut_release_mutex (ACPI_MTX_NAMESPACE); |
@@ -525,7 +528,8 @@ acpi_ns_get_device_callback ( | |||
525 | } | 528 | } |
526 | } | 529 | } |
527 | 530 | ||
528 | status = info->user_function (obj_handle, nesting_level, info->context, return_value); | 531 | status = info->user_function (obj_handle, nesting_level, info->context, |
532 | return_value); | ||
529 | return (status); | 533 | return (status); |
530 | } | 534 | } |
531 | 535 | ||
diff --git a/drivers/acpi/namespace/nsxfname.c b/drivers/acpi/namespace/nsxfname.c index f2405efd1b9a..8d097914c49a 100644 --- a/drivers/acpi/namespace/nsxfname.c +++ b/drivers/acpi/namespace/nsxfname.c | |||
@@ -57,9 +57,9 @@ | |||
57 | * FUNCTION: acpi_get_handle | 57 | * FUNCTION: acpi_get_handle |
58 | * | 58 | * |
59 | * PARAMETERS: Parent - Object to search under (search scope). | 59 | * PARAMETERS: Parent - Object to search under (search scope). |
60 | * path_name - Pointer to an asciiz string containing the | 60 | * Pathname - Pointer to an asciiz string containing the |
61 | * name | 61 | * name |
62 | * ret_handle - Where the return handle is placed | 62 | * ret_handle - Where the return handle is returned |
63 | * | 63 | * |
64 | * RETURN: Status | 64 | * RETURN: Status |
65 | * | 65 | * |
@@ -220,7 +220,7 @@ EXPORT_SYMBOL(acpi_get_name); | |||
220 | * FUNCTION: acpi_get_object_info | 220 | * FUNCTION: acpi_get_object_info |
221 | * | 221 | * |
222 | * PARAMETERS: Handle - Object Handle | 222 | * PARAMETERS: Handle - Object Handle |
223 | * Info - Where the info is returned | 223 | * Buffer - Where the info is returned |
224 | * | 224 | * |
225 | * RETURN: Status | 225 | * RETURN: Status |
226 | * | 226 | * |
diff --git a/drivers/acpi/namespace/nsxfobj.c b/drivers/acpi/namespace/nsxfobj.c index 19acf32674b9..363e1f6cfb18 100644 --- a/drivers/acpi/namespace/nsxfobj.c +++ b/drivers/acpi/namespace/nsxfobj.c | |||
@@ -56,7 +56,7 @@ | |||
56 | * FUNCTION: acpi_get_type | 56 | * FUNCTION: acpi_get_type |
57 | * | 57 | * |
58 | * PARAMETERS: Handle - Handle of object whose type is desired | 58 | * PARAMETERS: Handle - Handle of object whose type is desired |
59 | * *ret_type - Where the type will be placed | 59 | * ret_type - Where the type will be placed |
60 | * | 60 | * |
61 | * RETURN: Status | 61 | * RETURN: Status |
62 | * | 62 | * |
@@ -258,5 +258,5 @@ unlock_and_exit: | |||
258 | (void) acpi_ut_release_mutex (ACPI_MTX_NAMESPACE); | 258 | (void) acpi_ut_release_mutex (ACPI_MTX_NAMESPACE); |
259 | return (status); | 259 | return (status); |
260 | } | 260 | } |
261 | EXPORT_SYMBOL(acpi_get_next_object); | ||
262 | 261 | ||
262 | EXPORT_SYMBOL(acpi_get_next_object); | ||