760ec887f3
Phase I (LG Gram 16 (2025) / Arrow Lake-H S-state support) is complete and built. The plan doc captures: * Status table: which subsystems are done (acpid AML, kernel kstop handler, redbear-quirks LG Gram flags) and which limitations remain (S3 resume trampoline, s2idle wake interrupt handler — both Phase II). * Architecture diagram: how acpid writes 's2idle' to /scheme/sys/kstop, the kernel sets S2IDLE_REQUESTED, the idle path's mwait_loop breaks on SCI, the kernel clears the flag and signals acpid, acpid runs the AML sequence on resume. * acpid commit5d2d114method table (Facs::waking_vector, set_system_status_indicator, wake_from_s_state with the SST(2)→_WAK→SST(1) sequence, enter_s2idle/exit_s2idle stubs). * Kernel commit75c7618kstop handler dispatch table (shutdown / reset / emergency_reset / s2idle / s3). * Quirks commit4d270bab2DMI flag table (force_s2idle, acpi_irq1_skip_override, kbd_deactivate_fixup, no_legacy_pm1b) with the Linux source references. * Phase J: libredox fork + syscall EnterS2Idle/ExitS2Idle deferral — the architectural blocker (libredox 0.1.17 has its own vendored redox_syscall dep; [patch.crates-io] doesn't reach transitive deps). The patch file local/patches/syscall/P1-acpiverb-enter-exit-s2idle.patch is preserved as a durable artifact for Phase J. * Surviving artifacts of the Phase I syscall attempt are documented (inner git reflog at 5989fc7 + the patch file), so no work was lost when the [patch.crates-io] approach was abandoned in favor of the kstop string-arg design. Hardware-agnostic: the same plan applies to Dell, HP, Lenovo systems. The LG Gram specifics are just one target.