Machine
Apple MacBook Air (13-inch, M2, 2022)
Kernel
7.1.13-3-1-ARCH (Asahi)
What happens
After charging to 100% and unplugging the charger, one USB-C PD port keeps reporting that it is online / sourcing, indefinitely:
/sys/class/power_supply/tps6598x-source-psy-0-0038: POWER_SUPPLY_ONLINE=1 (stale, charger unplugged)
/sys/class/power_supply/macsmc-ac: POWER_SUPPLY_ONLINE=0
/sys/class/power_supply/macsmc-battery: status=Discharging, current_now=-334000
No USB device is attached to that port, so the source state should be idle. The battery is genuinely discharging, which makes the online=1 stale state in the CD321x/tps6598x path rather than real sourcing.
Impact
UPower enumerates these USB power supplies as line-power devices; the stale online=1 keeps the daemon's on-battery flag false, so desktops (e.g. GNOME, Omarchy's Quickshell shell) show "charging"/AC state while the battery drains. Low-battery logic keyed on on-battery also breaks.
Steps to reproduce
Charge to 100%, unplug the charger, then check /sys/class/power_supply/tps6598x-source-psy-*/online.
Machine
Apple MacBook Air (13-inch, M2, 2022)
Kernel
7.1.13-3-1-ARCH (Asahi)
What happens
After charging to 100% and unplugging the charger, one USB-C PD port keeps reporting that it is online / sourcing, indefinitely:
No USB device is attached to that port, so the source state should be idle. The battery is genuinely discharging, which makes the
online=1stale state in the CD321x/tps6598x path rather than real sourcing.Impact
UPower enumerates these USB power supplies as line-power devices; the stale
online=1keeps the daemon'son-batteryflag false, so desktops (e.g. GNOME, Omarchy's Quickshell shell) show "charging"/AC state while the battery drains. Low-battery logic keyed onon-batteryalso breaks.Steps to reproduce
Charge to 100%, unplug the charger, then check
/sys/class/power_supply/tps6598x-source-psy-*/online.