*
* FUNCTION: acpi_ev_queue_notify_request
*
- * PARAMETERS:
+ * PARAMETERS: Node - NS node for the notified object
+ * notify_value - Value from the Notify() request
*
- * RETURN: None.
+ * RETURN: Status
*
* DESCRIPTION: Dispatch a device notification event to a previously
* installed handler.
acpi_notify_value_names[notify_value]));
}
else {
- ACPI_DEBUG_PRINT ((ACPI_DB_INFO,
- "notify value: 0x%2.2x **Device Specific**\n",
+ ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Notify value: 0x%2.2X **Device Specific**\n",
notify_value));
}
- /*
- * Get the notify object attached to the NS Node
- */
+ /* Get the notify object attached to the NS Node */
+
obj_desc = acpi_ns_get_attached_object (node);
if (obj_desc) {
/* We have the notify object, Get the right handler */
}
if (!handler_obj) {
- /* There is no per-device notify handler for this device */
-
+ /*
+ * There is no per-device notify handler for this device.
+ * This may or may not be a problem.
+ */
ACPI_DEBUG_PRINT ((ACPI_DB_INFO,
- "No notify handler for [%4.4s] node %p\n",
- acpi_ut_get_node_name (node), node));
+ "No notify handler for Notify(%4.4s, %X) node %p\n",
+ acpi_ut_get_node_name (node), notify_value, node));
}
return (status);
*
* FUNCTION: acpi_ev_notify_dispatch
*
- * PARAMETERS:
+ * PARAMETERS: Context - To be passsed to the notify handler
*
* RETURN: None.
*
*
* FUNCTION: acpi_ev_global_lock_thread
*
+ * PARAMETERS: Context - From thread interface, not used
+ *
* RETURN: None
*
* DESCRIPTION: Invoked by SCI interrupt handler upon acquisition of the
*
* FUNCTION: acpi_ev_global_lock_handler
*
- * RETURN: Status
+ * PARAMETERS: Context - From thread interface, not used
+ *
+ * RETURN: ACPI_INTERRUPT_HANDLED or ACPI_INTERRUPT_NOT_HANDLED
*
* DESCRIPTION: Invoked directly from the SCI handler when a global lock
* release interrupt occurs. Grab the global lock and queue
*
* FUNCTION: acpi_ev_init_global_lock_handler
*
+ * PARAMETERS: None
+ *
* RETURN: Status
*
* DESCRIPTION: Install a handler for the global lock release event
*
* FUNCTION: acpi_ev_acquire_global_lock
*
+ * PARAMETERS: Timeout - Max time to wait for the lock, in millisec.
+ *
* RETURN: Status
*
* DESCRIPTION: Attempt to gain ownership of the Global Lock.
*
* FUNCTION: acpi_ev_release_global_lock
*
+ * PARAMETERS: None
+ *
+ * RETURN: Status
+ *
* DESCRIPTION: Releases ownership of the Global Lock.
*
******************************************************************************/
/* Disable all GPEs in all GPE blocks */
- status = acpi_ev_walk_gpe_list (acpi_hw_disable_gpe_block);
+ status = acpi_ev_walk_gpe_list (acpi_hw_disable_gpe_block, ACPI_NOT_ISR);
/* Remove SCI handler */
}
}
+ /* Deallocate all handler objects installed within GPE info structs */
+
+ status = acpi_ev_walk_gpe_list (acpi_ev_delete_gpe_handlers, ACPI_NOT_ISR);
+
/* Return to original mode if necessary */
if (acpi_gbl_original_mode == ACPI_SYS_MODE_LEGACY) {