Inhibit suspend on network activity
This commit is contained in:
parent
23f56b50b1
commit
e377bc87fd
33
sleepwalk
33
sleepwalk
|
@ -7,6 +7,7 @@ SLEEP_MAX_SECS=600
|
||||||
WAKE_SECS=35
|
WAKE_SECS=35
|
||||||
LOCK_DIR="/tmp/sleepwalk"
|
LOCK_DIR="/tmp/sleepwalk"
|
||||||
CPU_STATE=1
|
CPU_STATE=1
|
||||||
|
THRESHOLD="15.00"
|
||||||
|
|
||||||
set_cpu_offline() {
|
set_cpu_offline() {
|
||||||
if [ $CPU_STATE -eq 1 ]; then
|
if [ $CPU_STATE -eq 1 ]; then
|
||||||
|
@ -107,8 +108,38 @@ is_screen_on() {
|
||||||
return "$(cat /sys/class/backlight/backlight/bl_power)"
|
return "$(cat /sys/class/backlight/backlight/bl_power)"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
network_activity() {
|
||||||
|
for n in $(seq 3)
|
||||||
|
do
|
||||||
|
for i in wwan0 wlan0
|
||||||
|
do
|
||||||
|
A=$(ifstat -i $i 1 1 | tail -n1)
|
||||||
|
RX=$(echo $A | awk '{print $1}')
|
||||||
|
TX=$(echo $A | awk '{print $2}')
|
||||||
|
|
||||||
|
if [ "$RX" = "n/a" ] || [ "$TX" = "n/a" ]
|
||||||
|
then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
for v in $RX $TX
|
||||||
|
do
|
||||||
|
C=$(echo $v $THRESHOLD |
|
||||||
|
awk '{if ($1 > $2) print "y"; else print "n"}')
|
||||||
|
|
||||||
|
if [ "$C" = "y" ]
|
||||||
|
then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
done
|
||||||
|
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
can_suspend() {
|
can_suspend() {
|
||||||
! ( is_inhibitor_active || is_screen_on || is_charging )
|
! ( is_inhibitor_active || is_screen_on || is_charging || network_activity )
|
||||||
}
|
}
|
||||||
|
|
||||||
led_sleep() {
|
led_sleep() {
|
||||||
|
|
Loading…
Reference in New Issue