acpi_status bn_terminate (void) { acpi_status status = AE_OK; BM_DEVICE_ID criteria; BM_DRIVER driver; FUNCTION_TRACE("bn_terminate"); MEMSET(&criteria, 0, sizeof(BM_DEVICE_ID)); MEMSET(&driver, 0, sizeof(BM_DRIVER)); driver.notify = &bn_notify; driver.request = &bn_request; /* * Unregister for power buttons. */ MEMCPY(criteria.hid, BN_HID_POWER_BUTTON, sizeof(BN_HID_POWER_BUTTON)); status = bm_unregister_driver(&criteria, &driver); /* * Unregister for sleep buttons. */ MEMCPY(criteria.hid, BN_HID_SLEEP_BUTTON, sizeof(BN_HID_SLEEP_BUTTON)); status = bm_unregister_driver(&criteria, &driver); /* * Unregister for LID switches. */ MEMCPY(criteria.hid, BN_HID_LID_SWITCH, sizeof(BN_HID_LID_SWITCH)); status = bm_unregister_driver(&criteria, &driver); return_ACPI_STATUS(status); }
acpi_status pr_terminate (void) { acpi_status status = AE_OK; BM_DEVICE_ID criteria; BM_DRIVER driver; FUNCTION_TRACE("pr_terminate"); memset(&criteria, 0, sizeof(BM_DEVICE_ID)); memset(&driver, 0, sizeof(BM_DRIVER)); /* * Terminate power (Cx state) policy. */ status = pr_power_terminate(); if (ACPI_FAILURE(status)) { return_ACPI_STATUS(status); } /* * Unegister driver for processor devices. */ criteria.type = BM_TYPE_PROCESSOR; driver.notify = &pr_notify; driver.request = &pr_request; status = bm_unregister_driver(&criteria, &driver); return_ACPI_STATUS(status); }
acpi_status bm_pr_terminate (void) { acpi_status status = AE_OK; BM_DEVICE_ID criteria; BM_DRIVER driver; FUNCTION_TRACE("bm_pr_terminate"); MEMSET(&criteria, 0, sizeof(BM_DEVICE_ID)); MEMSET(&driver, 0, sizeof(BM_DRIVER)); criteria.type = BM_TYPE_POWER_RESOURCE; driver.notify = &bm_pr_notify; driver.request = &bm_pr_request; status = bm_unregister_driver(&criteria, &driver); return_ACPI_STATUS(status); }
acpi_status ec_terminate(void) { acpi_status status = AE_OK; BM_DEVICE_ID criteria; BM_DRIVER driver; FUNCTION_TRACE("ec_terminate"); MEMSET(&criteria, 0, sizeof(BM_DEVICE_ID)); MEMSET(&driver, 0, sizeof(BM_DRIVER)); /* * Unregister driver for AC Adapter devices. */ MEMCPY(criteria.hid, EC_HID_EC, sizeof(EC_HID_EC)); driver.notify = &ec_notify; driver.request = &ec_request; status = bm_unregister_driver(&criteria, &driver); return_ACPI_STATUS(status); }
acpi_status tz_terminate (void) { acpi_status status = AE_OK; BM_DEVICE_ID criteria; BM_DRIVER driver; FUNCTION_TRACE("tz_terminate"); memset(&criteria, 0, sizeof(BM_DEVICE_ID)); memset(&driver, 0, sizeof(BM_DRIVER)); /* * Unregister driver for thermal zone devices. */ criteria.type = BM_TYPE_THERMAL_ZONE; driver.notify = &tz_notify; driver.request = &tz_request; status = bm_unregister_driver(&criteria, &driver); return_ACPI_STATUS(status); }