diff options
Diffstat (limited to 'drivers/acpi/dispatcher')
-rw-r--r-- | drivers/acpi/dispatcher/dsmthdat.c | 15 | ||||
-rw-r--r-- | drivers/acpi/dispatcher/dswload.c | 6 | ||||
-rw-r--r-- | drivers/acpi/dispatcher/dswstate.c | 33 |
3 files changed, 8 insertions, 46 deletions
diff --git a/drivers/acpi/dispatcher/dsmthdat.c b/drivers/acpi/dispatcher/dsmthdat.c index f7998306f756..c83d53fd6398 100644 --- a/drivers/acpi/dispatcher/dsmthdat.c +++ b/drivers/acpi/dispatcher/dsmthdat.c | |||
@@ -633,22 +633,11 @@ acpi_ds_store_object_to_local ( | |||
633 | */ | 633 | */ |
634 | if (opcode == AML_ARG_OP) { | 634 | if (opcode == AML_ARG_OP) { |
635 | /* | 635 | /* |
636 | * Make sure that the object is the correct type. This may be | ||
637 | * overkill, butit is here because references were NS nodes in | ||
638 | * the past. Now they are operand objects of type Reference. | ||
639 | */ | ||
640 | if (ACPI_GET_DESCRIPTOR_TYPE (current_obj_desc) != ACPI_DESC_TYPE_OPERAND) { | ||
641 | ACPI_REPORT_ERROR (( | ||
642 | "Invalid descriptor type while storing to method arg: [%s]\n", | ||
643 | acpi_ut_get_descriptor_name (current_obj_desc))); | ||
644 | return_ACPI_STATUS (AE_AML_INTERNAL); | ||
645 | } | ||
646 | |||
647 | /* | ||
648 | * If we have a valid reference object that came from ref_of(), | 636 | * If we have a valid reference object that came from ref_of(), |
649 | * do the indirect store | 637 | * do the indirect store |
650 | */ | 638 | */ |
651 | if ((current_obj_desc->common.type == ACPI_TYPE_LOCAL_REFERENCE) && | 639 | if ((ACPI_GET_DESCRIPTOR_TYPE (current_obj_desc) == ACPI_DESC_TYPE_OPERAND) && |
640 | (current_obj_desc->common.type == ACPI_TYPE_LOCAL_REFERENCE) && | ||
652 | (current_obj_desc->reference.opcode == AML_REF_OF_OP)) { | 641 | (current_obj_desc->reference.opcode == AML_REF_OF_OP)) { |
653 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, | 642 | ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, |
654 | "Arg (%p) is an obj_ref(Node), storing in node %p\n", | 643 | "Arg (%p) is an obj_ref(Node), storing in node %p\n", |
diff --git a/drivers/acpi/dispatcher/dswload.c b/drivers/acpi/dispatcher/dswload.c index e2e0a855be2c..d2c603f54fd6 100644 --- a/drivers/acpi/dispatcher/dswload.c +++ b/drivers/acpi/dispatcher/dswload.c | |||
@@ -50,7 +50,7 @@ | |||
50 | #include <acpi/acnamesp.h> | 50 | #include <acpi/acnamesp.h> |
51 | #include <acpi/acevents.h> | 51 | #include <acpi/acevents.h> |
52 | 52 | ||
53 | #ifdef _ACPI_ASL_COMPILER | 53 | #ifdef ACPI_ASL_COMPILER |
54 | #include <acpi/acdisasm.h> | 54 | #include <acpi/acdisasm.h> |
55 | #endif | 55 | #endif |
56 | 56 | ||
@@ -176,7 +176,7 @@ acpi_ds_load1_begin_op ( | |||
176 | */ | 176 | */ |
177 | status = acpi_ns_lookup (walk_state->scope_info, path, object_type, | 177 | status = acpi_ns_lookup (walk_state->scope_info, path, object_type, |
178 | ACPI_IMODE_EXECUTE, ACPI_NS_SEARCH_PARENT, walk_state, &(node)); | 178 | ACPI_IMODE_EXECUTE, ACPI_NS_SEARCH_PARENT, walk_state, &(node)); |
179 | #ifdef _ACPI_ASL_COMPILER | 179 | #ifdef ACPI_ASL_COMPILER |
180 | if (status == AE_NOT_FOUND) { | 180 | if (status == AE_NOT_FOUND) { |
181 | /* | 181 | /* |
182 | * Table disassembly: | 182 | * Table disassembly: |
@@ -569,7 +569,7 @@ acpi_ds_load2_begin_op ( | |||
569 | ACPI_IMODE_EXECUTE, ACPI_NS_SEARCH_PARENT, | 569 | ACPI_IMODE_EXECUTE, ACPI_NS_SEARCH_PARENT, |
570 | walk_state, &(node)); | 570 | walk_state, &(node)); |
571 | if (ACPI_FAILURE (status)) { | 571 | if (ACPI_FAILURE (status)) { |
572 | #ifdef _ACPI_ASL_COMPILER | 572 | #ifdef ACPI_ASL_COMPILER |
573 | if (status == AE_NOT_FOUND) { | 573 | if (status == AE_NOT_FOUND) { |
574 | status = AE_OK; | 574 | status = AE_OK; |
575 | } | 575 | } |
diff --git a/drivers/acpi/dispatcher/dswstate.c b/drivers/acpi/dispatcher/dswstate.c index cc45d52225d6..d360d8e89544 100644 --- a/drivers/acpi/dispatcher/dswstate.c +++ b/drivers/acpi/dispatcher/dswstate.c | |||
@@ -681,7 +681,7 @@ acpi_ds_create_walk_state ( | |||
681 | ACPI_FUNCTION_TRACE ("ds_create_walk_state"); | 681 | ACPI_FUNCTION_TRACE ("ds_create_walk_state"); |
682 | 682 | ||
683 | 683 | ||
684 | walk_state = acpi_ut_acquire_from_cache (ACPI_MEM_LIST_WALK); | 684 | walk_state = ACPI_MEM_CALLOCATE (sizeof (struct acpi_walk_state)); |
685 | if (!walk_state) { | 685 | if (!walk_state) { |
686 | return_PTR (NULL); | 686 | return_PTR (NULL); |
687 | } | 687 | } |
@@ -704,7 +704,7 @@ acpi_ds_create_walk_state ( | |||
704 | 704 | ||
705 | status = acpi_ds_result_stack_push (walk_state); | 705 | status = acpi_ds_result_stack_push (walk_state); |
706 | if (ACPI_FAILURE (status)) { | 706 | if (ACPI_FAILURE (status)) { |
707 | acpi_ut_release_to_cache (ACPI_MEM_LIST_WALK, walk_state); | 707 | ACPI_MEM_FREE (walk_state); |
708 | return_PTR (NULL); | 708 | return_PTR (NULL); |
709 | } | 709 | } |
710 | 710 | ||
@@ -900,38 +900,11 @@ acpi_ds_delete_walk_state ( | |||
900 | acpi_ut_delete_generic_state (state); | 900 | acpi_ut_delete_generic_state (state); |
901 | } | 901 | } |
902 | 902 | ||
903 | acpi_ut_release_to_cache (ACPI_MEM_LIST_WALK, walk_state); | 903 | ACPI_MEM_FREE (walk_state); |
904 | return_VOID; | 904 | return_VOID; |
905 | } | 905 | } |
906 | 906 | ||
907 | 907 | ||
908 | #ifdef ACPI_ENABLE_OBJECT_CACHE | ||
909 | /****************************************************************************** | ||
910 | * | ||
911 | * FUNCTION: acpi_ds_delete_walk_state_cache | ||
912 | * | ||
913 | * PARAMETERS: None | ||
914 | * | ||
915 | * RETURN: None | ||
916 | * | ||
917 | * DESCRIPTION: Purge the global state object cache. Used during subsystem | ||
918 | * termination. | ||
919 | * | ||
920 | ******************************************************************************/ | ||
921 | |||
922 | void | ||
923 | acpi_ds_delete_walk_state_cache ( | ||
924 | void) | ||
925 | { | ||
926 | ACPI_FUNCTION_TRACE ("ds_delete_walk_state_cache"); | ||
927 | |||
928 | |||
929 | acpi_ut_delete_generic_cache (ACPI_MEM_LIST_WALK); | ||
930 | return_VOID; | ||
931 | } | ||
932 | #endif | ||
933 | |||
934 | |||
935 | #ifdef ACPI_OBSOLETE_FUNCTIONS | 908 | #ifdef ACPI_OBSOLETE_FUNCTIONS |
936 | /******************************************************************************* | 909 | /******************************************************************************* |
937 | * | 910 | * |