Skip to content

Commit 5717e13

Browse files
committed
surface_acpi: Default-disable wakeup on SSH
The SSH device causes some unwanted wakeups. It seems that Windows has additional checks that determine if the system should be resumed or not. Thus set power/wakeup to false until we've figured that out.
1 parent 160e224 commit 5717e13

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

drivers/platform/x86/surface_sam/surface_sam_ssh.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1621,7 +1621,15 @@ static int surface_sam_ssh_probe(struct serdev_device *serdev)
16211621

16221622
surface_sam_ssh_release(ec);
16231623

1624-
device_init_wakeup(&serdev->dev, true);
1624+
// TODO: The EC can wake up the system via the associated GPIO interrupt in
1625+
// multiple situations. One of which is the remaining battery capacity
1626+
// falling below a certain threshold. Normally, we should use the
1627+
// device_init_wakeup function, however, the EC also seems to have other
1628+
// reasons for waking up the system and it seems that Windows has
1629+
// additional checks whether the system should be resumed. In short, this
1630+
// causes some spourious unwanted wake-ups. For now let's thus default
1631+
// power/wakeup to false.
1632+
device_set_wakeup_capable(&serdev->dev, true);
16251633
acpi_walk_dep_device_list(ssh);
16261634

16271635
return 0;

0 commit comments

Comments
 (0)