Lines Matching refs:wakeup
399 if (adev->wakeup.flags.notifier_present) { in acpi_pm_notify_handler()
400 __pm_wakeup_event(adev->wakeup.ws, 0); in acpi_pm_notify_handler()
401 if (adev->wakeup.context.work.func) in acpi_pm_notify_handler()
402 queue_pm_work(&adev->wakeup.context.work); in acpi_pm_notify_handler()
431 if (adev->wakeup.flags.notifier_present) in acpi_add_pm_notifier()
434 adev->wakeup.ws = wakeup_source_register(dev_name(&adev->dev)); in acpi_add_pm_notifier()
435 adev->wakeup.context.dev = dev; in acpi_add_pm_notifier()
437 INIT_WORK(&adev->wakeup.context.work, work_func); in acpi_add_pm_notifier()
444 adev->wakeup.flags.notifier_present = true; in acpi_add_pm_notifier()
461 if (!adev->wakeup.flags.notifier_present) in acpi_remove_pm_notifier()
470 if (adev->wakeup.context.work.func) { in acpi_remove_pm_notifier()
471 cancel_work_sync(&adev->wakeup.context.work); in acpi_remove_pm_notifier()
472 adev->wakeup.context.work.func = NULL; in acpi_remove_pm_notifier()
474 adev->wakeup.context.dev = NULL; in acpi_remove_pm_notifier()
475 wakeup_source_unregister(adev->wakeup.ws); in acpi_remove_pm_notifier()
477 adev->wakeup.flags.notifier_present = false; in acpi_remove_pm_notifier()
490 return result ? false : device->wakeup.flags.valid; in acpi_bus_can_wakeup()
522 bool wakeup = false; in acpi_dev_pm_get_state() local
562 wakeup = device_may_wakeup(dev) && adev->wakeup.flags.valid in acpi_dev_pm_get_state()
563 && adev->wakeup.sleep_state >= target_state; in acpi_dev_pm_get_state()
566 wakeup = adev->wakeup.flags.valid; in acpi_dev_pm_get_state()
576 if (wakeup) { in acpi_dev_pm_get_state()
688 struct acpi_device_wakeup *wakeup = &adev->wakeup; in acpi_device_wakeup() local
698 if (adev->wakeup.flags.enabled) in acpi_device_wakeup()
701 res = acpi_enable_gpe(wakeup->gpe_device, wakeup->gpe_number); in acpi_device_wakeup()
703 adev->wakeup.flags.enabled = 1; in acpi_device_wakeup()
709 if (adev->wakeup.flags.enabled) { in acpi_device_wakeup()
710 acpi_disable_gpe(wakeup->gpe_device, wakeup->gpe_number); in acpi_device_wakeup()
711 adev->wakeup.flags.enabled = 0; in acpi_device_wakeup()
893 bool wakeup; in acpi_dev_suspend_late() local
900 wakeup = device_may_wakeup(dev) && acpi_device_can_wakeup(adev); in acpi_dev_suspend_late()
901 error = acpi_device_wakeup(adev, target_state, wakeup); in acpi_dev_suspend_late()
902 if (wakeup && error) in acpi_dev_suspend_late()
950 || device_may_wakeup(dev) != !!adev->wakeup.prepare_count) in acpi_subsys_prepare()