- int err;
-
- if ((err = pthread_create(&power_mgmt_thread, NULL, power_mgmt_thread_func, NULL))) {
- plog(LLV_ERROR, LOCATION, NULL,
- "failed to create power-mgmt thread: %d\n", err);
- return -1;
- }
-
- return 0;
+#ifdef kIOPMAcknowledgmentOptionSystemCapabilityRequirements
+
+ IOPMConnectionSetDispatchQueue(gPMConnection, NULL);
+ IOPMConnectionRelease(gPMConnection);
+
+#else
+
+ IODeregisterForSystemPower(&iterator);
+ IONotificationPortDestroy(notify);
+
+#endif // kIOPMAcknowledgmentOptionSystemCapabilityRequirements
+