Repository navigation
Description
Mac and installed build
- Mac: MacBook Air (13-inch, M3, 2024),
apple,j613/apple,t8122 - Installed: Omarchy 4.5.0-3, omarchy-mac 0.2.3-2,
linux-aurora 7.2.11.aurora14-1(uname -r:7.2.11-14-1-ARCH) - Boot chain:
m1n1-aurora 1.6.1.aurora22-1,uboot-aurora 2026.07.aurora6-1 - Distribution: Arch Linux ARM, btrfs on LUKS2, zram swap only. No local kernel patches.
- systemd 262.1-1, Hyprland 0.56.2-7,
mesa-aurora 26.3.0_devel.20261031
Both firmware versions and provisioning
asahi,os-fw-version: 14.7
asahi,system-fw-version: 27.0
Reproduction, expected result, and actual result
To reproduce, close the lid on battery with nothing attached. logind suspends to s2idle, which is the only mode offered (/sys/power/mem_sleep: [s2idle]), and the machine is left closed overnight.
Expected: a closed Air loses a few percent overnight, as it does under macOS.
Actual: the battery runs completely flat. The machine never resumes, and the next start is a cold boot at 0%.
Timeline from the journal and UPower history (GetHistory charge):
| Time (CET) | Event | Battery |
|---|---|---|
| 03:31:48 | 34% | |
| 03:47:31 → 03:47:34 | lid close/open, s2idle entry and exit OK | |
| 03:48:14 | 30% | |
| 03:49:26 → 03:52:01 | lid close/open, s2idle entry and exit OK | |
| 03:53:57 | Lid closed → PM: suspend entry (s2idle), the last line of the boot |
~30% |
| 13:01:45 | next boot (cold), UPower reads 0% | 0% |
So about 30% of a 41.0 Wh pack (~12.3 Wh) was drained in at most 9.1 h. That puts the s2idle draw at ≥ 1.35 W (~3.3 %/h). It is a lower bound, because the time the battery hit empty is unknown.
That is lower than the T600x/T6030 figures in #290 (~1.9–2.0 W) and #291 (~2.65 W), but still more than 10× the ~0.1 W macOS figure in #290. As far as I can find, this is the first sleep-drain data point for J613.
Other details:
- This is not a failed suspend. Two short s2idle cycles a few minutes earlier in the same boot resumed correctly on lid open. The final cycle entered cleanly, and nothing is logged after
PM: suspend entry (s2idle). - The RTC survived. On the next boot
macsmc-rtcset the correct wall-clock time (setting system clock to 2026-11-07T12:01:45 UTC). That differs from #779, where the RTC reset to 1970/1976. - The gauge read 0% right after boot (
energy_now0,voltage_now~11.50 V while charging at ~21 W). It recovered to normal readings after a short charge. - Battery: bq40z651,
energy_full41.0 Wh of 52.0 Wh design, 308 cycles. The charge thresholds (75/80) are configured. - No fallback is available while asleep on this machine either.
/sys/power/stateisfreeze memwith nodisk, so there is no hibernation./sys/class/rtc/rtc0(macsmc-rtc) has nowakealarm, so there is no timed wake to power off.iw phy phy0 wowlan showreturns-95. As a result, the stock lid-close behaviour on battery is "suspend and drain to zero".
Graphics or session details (if relevant)
The display is on DCP (apple-t8122-display: enabled ... /soc/dcp@28ec00000). Hyprland 0.56.2 runs with Omarchy's lid-close lock. The two short resumes before the final sleep came back to the locked session without a compositor restart.
Relevant error lines
2026-11-07T03:53:56+01:00 systemd-logind[835]: Lid closed.
2026-11-07T03:53:56+01:00 systemd-logind[835]: Suspending...
2026-11-07T03:53:57+01:00 fprintd[8701]: Failed to install a sleep delay inhibitor: GDBus.Error:org.freedesktop.login1.OperationInProgress: The operation inhibition has been requested for is already running
2026-11-07T03:53:57+01:00 systemd-sleep[8968]: Performing sleep operation 'suspend'...
2026-11-07T03:53:57+01:00 kernel: PM: suspend entry (s2idle)
-- (end of boot; next boot starts 13:01:45) --
2026-11-07T13:01:45+01:00 kernel: macsmc-rtc macsmc-rtc: setting system clock to 2026-11-07T12:01:45 UTC (1794052905)
The previous boot logs no Battery critical line from macsmc-power.
Related issues, pull requests, or code examples
- j314s (MacBook Pro M1 Pro): s2idle draws ~1.9–2.0 W; measurements and what's ruled out #290: J314s (M1 Pro) s2idle ~1.9–2.0 W, with a breakdown of the PMGR domains that stay powered (display coprocessors, always-on SoC blocks).
- j514s (MacBook Pro 14" M3 Pro): s2idle draws ~2.65 W overnight, with no hibernation or RTC wake to fall back on #291: J514s (M3 Pro) s2idle ~2.65 W, with no hibernation or RTC wake.
- Apple Silicon: closed lid on battery drains to 0% in s2idle (~3 W), no hibernation or timed wake to stop it omarchy-mac#779: closed lid on battery drains to 0% (~3 W, M1 Max). That issue also proposes a battery-aware lid policy.
- t600x: PMU RTC wake alarm (SPMI notify at 192, Maverick event clear, DT) #351: PMU RTC wake alarm, T600x only. Something equivalent for T8122 would allow a suspend → timed wake → poweroff fallback here.
Workaround: power off instead of suspending when leaving the machine closed on battery.
What was not tested
- Only one overnight measurement, taken from UPower history (1% granularity). There are no
charge_countershort runs yet. - The exact time the battery reached empty is unknown, so 1.35 W is a lower bound.
- No per-domain (pmgr-pwrstate), cpuidle s2idle counter, or interrupt breakdown during sleep. The counters were lost with the dead boot.
- No comparison with radios soft-blocked or USB-C wakeup disabled.
- No macOS sleep measurement on this unit.
- No external display, dock or USB devices were attached. The Bluetooth mouse (MX Master 3S) was paired.
I can run short charge_counter lid-closed measurements, or test a CI kernel package, on this J613 if that helps.
Activity