Page MenuHomeFreeBSD

acpi: Increase length of time (1s -> 5s) for quirk
Needs ReviewPublic

Authored by dteske on Fri, Sep 11, 4:23 AM.

Details

Summary

The ACPI quirk on Framework Laptop 12 firmware was previously clocked
at ~620 ms for a Notify 0x80 replayed on power-button press to wake.

However, when KMS is not loaded, that very same notification comes in
past the 1s we previously allowed.

Use the already-defined ACPI_MINIMUM_AWAKETIME (5) seconds as our new
boundary so that we can successfully come out of S3 on this hardware.

Test Plan

Unload i915kms and disable it, then reboot to console-only.

With sysctl hw.acpi.power_button_state=fw_suspend (default) press the power button on the Framework laptop to put it into S3 sleep.

The power button (which has a light in it) will show it is in sleep when the light starts to "throb" / "pulse"

When the light is observed to be pulsing, press the power button once more to bring the system out of S3 sleep state.

EFIFB is not yet fixed so do not expect the screen to turn on, just watch the power button.

Without this patch, a few seconds after going solid, the light will go back to pulsing (and the machine will be unreachable by ssh / network).

With this patch, the light will stay solid after coming back up.

There's an issue with EFIFB still so the screen does not come back after coming out of S3 but the network is operational and the machine responds to ssh, proving that it is back up when the light is remaining solid.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 76762
Build 73645: arc lint + arc unit

Event Timeline

dteske created this revision.

This is a small follow-up to D57712

Successfully tested and test passed. Was able to come out of S3 sleep state on new kernel whereas previous kernel with only 1s replay window was still going back to sleep when lacking KMS