meta-digi-dey: Add wifi pre/post actions to suspend script

It has been observed that the wireless interface ocassionally fails to resume
from suspend on extensive long run validation testing, so we workaround it by
bringing the interface down before suspend and bring it up again after resume

This reverts commit a77cd1406d.

https://jira.digi.com/browse/DEL-2217

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit is contained in:
Isaac Hermida 2016-02-08 11:19:44 +01:00
parent f0c62bbd7d
commit 3a9825b27d
1 changed files with 14 additions and 0 deletions

View File

@ -25,6 +25,18 @@ usage() {
\n"
}
suspend_interfaces() {
if grep -qs '^wlan0' /var/run/ifstate; then
ifdown wlan0 && up_wlan_on_resume="1" && sleep 0.5 && rmmod ath6kl_sdio
fi
}
resume_interfaces() {
if ! grep -qs '^wlan0' /var/run/ifstate; then
[ -n "${up_wlan_on_resume}" ] && modprobe ath6kl_sdio && sleep 0.5 && ifup wlan0
fi
}
while getopts "h" c; do
case "${c}" in
h) usage; exit;;
@ -33,12 +45,14 @@ done
if [ -f "${syspower}" ]; then
# Pre-suspend actions
suspend_interfaces
# Suspend the device
printf "mem" > ${syspower}
sleep .5
# Post-resume actions
resume_interfaces
else
printf "\n[ERROR] File ${syspower} not found\n\n"
fi