acpi_status acpi_terminate(void) { acpi_status status; ACPI_FUNCTION_TRACE("acpi_terminate"); /* Terminate the AML Debugger if present */ ACPI_DEBUGGER_EXEC(acpi_gbl_db_terminate_threads = TRUE); /* Shutdown and free all resources */ acpi_ut_subsystem_shutdown(); /* Free the mutex objects */ acpi_ut_mutex_terminate(); #ifdef ACPI_DEBUGGER /* Shut down the debugger */ acpi_db_terminate(); #endif /* Now we can shutdown the OS-dependent layer */ status = acpi_os_terminate(); return_ACPI_STATUS(status); }
/******************************************************************************* * * FUNCTION: acpi_terminate * * PARAMETERS: None * * RETURN: Status * * DESCRIPTION: Shutdown the ACPICA subsystem and release all resources. * ******************************************************************************/ acpi_status ACPI_INIT_FUNCTION acpi_terminate(void) { acpi_status status; ACPI_FUNCTION_TRACE(acpi_terminate); /* Shutdown and free all resources */ acpi_ut_subsystem_shutdown(); /* Free the mutex objects */ acpi_ut_mutex_terminate(); /* Now we can shutdown the OS-dependent layer */ status = acpi_os_terminate(); return_ACPI_STATUS(status); }
/******************************************************************************* * * FUNCTION: acpi_terminate * * PARAMETERS: None * * RETURN: Status * * DESCRIPTION: Shutdown the ACPICA subsystem and release all resources. * ******************************************************************************/ acpi_status acpi_terminate(void) { acpi_status status; ACPI_FUNCTION_TRACE(acpi_terminate); /* Just exit if subsystem is already shutdown */ if (acpi_gbl_shutdown) { ACPI_ERROR((AE_INFO, "ACPI Subsystem is already terminated")); return_ACPI_STATUS(AE_OK); } /* Subsystem appears active, go ahead and shut it down */ acpi_gbl_shutdown = TRUE; acpi_gbl_startup_flags = 0; ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Shutting down ACPI Subsystem\n")); /* Terminate the AML Debugger if present */ ACPI_DEBUGGER_EXEC(acpi_gbl_db_terminate_threads = TRUE); /* Shutdown and free all resources */ acpi_ut_subsystem_shutdown(); /* Free the mutex objects */ acpi_ut_mutex_terminate(); #ifdef ACPI_DEBUGGER /* Shut down the debugger */ acpi_db_terminate(); #endif /* Now we can shutdown the OS-dependent layer */ status = acpi_os_terminate(); return_ACPI_STATUS(status); }