On Fri, Jul 21, 2017 at 02:40:49PM +0200, Rafael J. Wysocki wrote: > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > To prepare for a subsequent change and make the code somewhat easier > to follow, do the following in the ACPI device wakeup handling code: > > * Replace wakeup.flags.enabled under struct acpi_device with > wakeup.enable_count as that will be necessary going forward. > > For now, wakeup.enable_count is not allowed to grow beyond 1, > so the current behavior is retained. > > * Split acpi_device_wakeup() into acpi_device_wakeup_enable() > and acpi_device_wakeup_disable() and modify the callers of > it accordingly. > > * Introduce a new acpi_wakeup_lock mutex to protect the wakeup > enabling/disabling code from races in case it is executed > more than once in parallel for the same device (which may > happen for bridges theoretically). > > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>