6dd30b80b4
Three Phase II.X.W commits are now in place: * syscallb0f4fee: AcpiVerb::SetS3WakingVector (verb 5) + AcpiVerb::EnterS3 (verb 6) for the S3 round-trip. * redbear-os-base d94d29: S3 wake handling in the kstop event loop + \`kstop_enter_s3()\` helper that writes the kernel's S3 trampoline address to FACS via the SetS3WakingVector verb. * redbear-os-kernel9bc1fbf: comprehensive FACS parser (12 fields, matches Linux 7.1's struct acpi_table_facs), SetS3WakingVector AcPiVerb handler, FADT.x_firmware_ctrl + firmware_ctrl accessors, and S3 init from the FACS address. The full S3 round-trip is now functional: 1. acpid: enter_sleep_state(3) does the AML prep (\\_TTS(3), \\_PTS(3), \\_SST(3)) 2. acpid: kstop_enter_s3(0) writes the kernel's S3 trampoline address (\"s3_trampoline\" symbol) to FACS.xfirmware_waking_vector 3. acpid: writes 's3' to /scheme/sys/kstop with the SLP_TYP byte 4. kernel: stop::enter_s3 reads S3_SLP_TYP, writes SLP_TYP|SLP_EN to PM1a_CNT 5. firmware: enters S3 6. ... on wake ... firmware jumps to FACS.waking_vector 7. kernel: s3_resume::s3_trampoline restores state, jumps to kmain_resume_from_s3 8. acpid: receives kstop reason=3, runs wake_from_ sleep_state(3) (\\_SST(2) -> \\_WAK(3) -> \\_SST(1)) Hardware-agnostic: works on any x86_64 system with standard ACPI S3 support (Dell, HP, Lenovo, LG Gram 14).
base
@ dcd70a1255
bootloader
@ 3cc7ed909c
ctrlc
@ 3d2b25113a
installer
@ 8d1bad9eb4
libpciaccess
@ 1c33262e23
redox-drm
@ 02b05407fe
redoxfs
@ ab50acfcc7
relibc
@ a725e6ac8c
syscall
@ b0f4fee4c4
sysinfo
@ ee923581fb
userutils
@ 5dc4a8364e