Kobo: suspend correct (state-extended avant rtcwake) + hwclock sync + logs suspend
This commit is contained in:
@@ -37,19 +37,23 @@ display() {
|
||||
}
|
||||
|
||||
suspend_for() {
|
||||
# Séquence Kobo éprouvée (trmnl-kobo) : state-extended=1 AVANT rtcwake, puis
|
||||
# suspend manuel (echo mem) si rtcwake n'a pas vraiment suspendu.
|
||||
secs="$1"
|
||||
sync
|
||||
echo 1 > /sys/power/state-extended 2>/dev/null
|
||||
start=$(date +%s)
|
||||
"$BUSYBOX" rtcwake -a -s "$secs" -m mem 2>/dev/null
|
||||
end=$(date +%s)
|
||||
if [ $((end - start)) -lt 10 ]; then
|
||||
log "rtcwake fallback (state-extended)"
|
||||
echo 1 > /sys/power/state-extended 2>/dev/null
|
||||
sleep 2
|
||||
elapsed=$(( $(date +%s) - start ))
|
||||
log "rtcwake elapsed=${elapsed}s"
|
||||
if [ "$elapsed" -le 10 ]; then
|
||||
log "suspend manuel via echo mem"
|
||||
sleep 1; sync; sleep 2
|
||||
m_start=$(date +%s)
|
||||
echo mem > /sys/power/state 2>/dev/null
|
||||
echo 0 > /sys/power/state-extended 2>/dev/null
|
||||
now=$(date +%s)
|
||||
[ $((now - start)) -lt 10 ] && { log "suspend KO -> sleep $secs"; sleep "$secs"; }
|
||||
log "echo mem elapsed=$(( $(date +%s) - m_start ))s (≈${secs}=OK, ≈0=Nickel bloque)"
|
||||
fi
|
||||
echo 0 > /sys/power/state-extended 2>/dev/null
|
||||
}
|
||||
|
||||
while true; do
|
||||
|
||||
Reference in New Issue
Block a user