Ah, I see this is specifically mentioned at
https://docs.freebsd.org/en/books/handbook/config/index.html#acpi-overview:
"   In order for the suspend/resume functionality to work correctly the
graphics drivers must be loaded on the system."

So, I need to ensure that X is loaded before the system is ever suspended
(like the lid being closed). Is there any way to ensure that X is loaded
before hw.acpi.power_button_state or hw.acpi.lid_switch_state cause a
suspension?

On Wed, Aug 7, 2024 at 8:53 PM Joshua Rogers <megaman...@gmail.com> wrote:

> Hi all,
>
> I'm currently battling with a Macbook Pro 11.4, attempting to get all of
> its hardware supported on FreeBSD. At the moment, I'm investigating whether
> it is possible to get suspend/resume working at on 13.3-RELEASE-p4.
>
> I've exhibited a few different behaviors:
>
> Using the inbuilt SSD/NVMe ("SM951 AHCI"), I exhibit the following
> behaviour:
>
> 1A. No X, Using debug.acpi.suspend_bounce=1:
> Successfully resumes, but the disk becomes unreadable/unwritable. The
> keyboard is responsive but the mouse is not. I can continue some actions,
> but clearly only what is cached in memory. I don't know whether this is
> expected: I'm using ZFS with full disk encryption.
>
> 1B. No X, using debug.acpi.suspend_bounce=0:
> The screen does not turn back on: but everything else seems to work like
> beep, drive read/writing, keyboard, etc (I'm basically just typing in the
> blind).
>
>
> 2A. Using X and suspend_bounce=1:
> The screen resumes but the disk becomes unreadable writable. The keyboard
> is responsive but the mouse is not. The same as without X
>
> 2B. Using X and debug.acpi.suspend_bounce=0:
> Everything works as well as expected. Keyboard and mouse work. Writing to
> the disk works.
>
> ---
>
> For the non-X use cases, I've built the kernel with the following minimal
> configuration [config.txt]. A more minimal version may work, but I didn't
> bother to trim it down any further. The behavior exhibited by the
> suspension is the same as when built normally.
>
> At the moment, case 2B is fine: I use X most of the time, and I don't use
> suspend_bounce. But I would like to fiz the 1B case at least (no X). Are
> there any suggestions of how to debug this?
>
> FYI: It looks like the Linux kernel went through an issue with this
> version of the Macbook too:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=13cfc732160f
>  / https://bugzilla.kernel.org/show_bug.cgi?id=103211. I've attempted to
> recreate the patch and it loads, but does not seem to do anything
> [asmc-patch.c.patch]. I have no idea if it is relevant or not.
>
> An initial HW_PROBE can be found here:
> https://bsd-hardware.info/?probe=6bade1eaf8
>
> Cheers,
> Joshua.
>

Reply via email to