aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/nsinit.c
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2009-09-02 22:21:03 -0400
committerLen Brown <len.brown@intel.com>2009-09-08 22:28:34 -0400
commit9e64155eb1b6ab78980db58cfd21385fa5f6b024 (patch)
tree2484d66814599527789f59b56533428fac42c5fc /drivers/acpi/acpica/nsinit.c
parenteb752552464dbb7a99f8a975ec3b9355893cedd4 (diff)
ACPICA: Windows compatibility: autoexecute root _INI method
Add support for execution of an _INI method at the namespace root. Although not defined in the ACPI specification, this support was added to Windows around the Vista timeframe. It is added here for Windows compatibility. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lin Ming <ming.m.lin@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/nsinit.c')
-rw-r--r--drivers/acpi/acpica/nsinit.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/nsinit.c b/drivers/acpi/acpica/nsinit.c
index 2adfcf329e15..1d5b360eb25b 100644
--- a/drivers/acpi/acpica/nsinit.c
+++ b/drivers/acpi/acpica/nsinit.c
@@ -170,6 +170,21 @@ acpi_status acpi_ns_initialize_devices(void)
170 goto error_exit; 170 goto error_exit;
171 } 171 }
172 172
173 /*
174 * Execute the "global" _INI method that may appear at the root. This
175 * support is provided for Windows compatibility (Vista+) and is not
176 * part of the ACPI specification.
177 */
178 info.evaluate_info->prefix_node = acpi_gbl_root_node;
179 info.evaluate_info->pathname = METHOD_NAME__INI;
180 info.evaluate_info->parameters = NULL;
181 info.evaluate_info->flags = ACPI_IGNORE_RETURN_VALUE;
182
183 status = acpi_ns_evaluate(info.evaluate_info);
184 if (ACPI_SUCCESS(status)) {
185 info.num_INI++;
186 }
187
173 /* Walk namespace to execute all _INIs on present devices */ 188 /* Walk namespace to execute all _INIs on present devices */
174 189
175 status = acpi_ns_walk_namespace(ACPI_TYPE_ANY, ACPI_ROOT_OBJECT, 190 status = acpi_ns_walk_namespace(ACPI_TYPE_ANY, ACPI_ROOT_OBJECT,