]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/acpi/namespace/nsxfeval.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6
[linux-2.6-omap-h63xx.git] / drivers / acpi / namespace / nsxfeval.c
index b92133faf5b7087fde85829c3511a64d3b24afb3..38be5865d95df30e382f21b2adb8d2b6837aa2f9 100644 (file)
@@ -6,7 +6,7 @@
  ******************************************************************************/
 
 /*
- * Copyright (C) 2000 - 2007, R. Byron Moore
+ * Copyright (C) 2000 - 2008, Intel Corp.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -182,7 +182,6 @@ acpi_evaluate_object(acpi_handle handle,
        }
 
        info->pathname = pathname;
-       info->parameter_type = ACPI_PARAM_ARGS;
 
        /* Convert and validate the device handle */
 
@@ -442,7 +441,7 @@ acpi_ns_get_device_callback(acpi_handle obj_handle,
        u32 flags;
        struct acpica_device_id hid;
        struct acpi_compatible_id_list *cid;
-       acpi_native_uint i;
+       u32 i;
        int found;
 
        status = acpi_ut_acquire_mutex(ACPI_MTX_NAMESPACE);
@@ -467,10 +466,13 @@ acpi_ns_get_device_callback(acpi_handle obj_handle,
                return (AE_CTRL_DEPTH);
        }
 
-       if (!(flags & ACPI_STA_DEVICE_PRESENT)) {
-
-               /* Don't examine children of the device if not present */
-
+       if (!(flags & ACPI_STA_DEVICE_PRESENT) &&
+           !(flags & ACPI_STA_DEVICE_FUNCTIONING)) {
+               /*
+                * Don't examine the children of the device only when the
+                * device is neither present nor functional. See ACPI spec,
+                * description of _STA for more information.
+                */
                return (AE_CTRL_DEPTH);
        }
 
@@ -539,7 +541,7 @@ acpi_ns_get_device_callback(acpi_handle obj_handle,
  *              value is returned to the caller.
  *
  *              This is a wrapper for walk_namespace, but the callback performs
- *              additional filtering. Please see acpi_get_device_callback.
+ *              additional filtering. Please see acpi_ns_get_device_callback.
  *
  ******************************************************************************/