[Bug 286974] [ACPI] Thinkpad EC stops answering after suspend/resume

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 27 May 2025 14:23:22 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286974

--- Comment #11 from obiwac@gmail.com ---
Thank you for the clarification.

Even when the lid event prints are not showing up, does dev.acpi_lid.0.state
change correctly every subsequent time you open/close the lid, or only right
after suspend?

I see in acpi_lid_resume that it reads the lid status (from the _LID object):

    /* Update lid status, if any */
    acpi_lid_status_update(sc);

So it seems at least somewhat expected that you won't necessarily get a GPE for
the lid open event that woke the system up from S3.

In response to avg@:

> I think that PC00.GFX0 message is a red herring.

+1

> It's possible that we do not clear some general purpose event (causing it to be stuck) or do not reprogram some register after resuming from S3.

I agree. garga@, I wonder if your system stops receiving all GPEs or just the
lid events. Can you check that EcGpeQueryHandler is ever being called?

    dtrace -n 'fbt::EcGpeQueryHandler:entry'

The EC should be sending you messages from time to time about battery status.

If you have KTR in your kernel, you can also look from messages coming from
this to get more detail:

    CTR2(KTR_ACPI, "ec query ok,%s running _Q%02X", Data ? "" : " not", Data);

-- 
You are receiving this mail because:
You are the assignee for the bug.