Version Bump
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
# PinePhone suspend / wakeup modem
|
||||
# /usr/lib/systemd/system-sleep/pinephone-modem-suspend.sh
|
||||
|
||||
# DTR is:
|
||||
# - PL6/GPIO358 on BH (1.1)
|
||||
# - PB2/GPIO34 on CE (1.2)
|
||||
|
||||
# AP_READY is:
|
||||
# - PL2/GPIO354 on BH (1.1)
|
||||
# - PH7/GPIO231 on CE (1.2)
|
||||
|
||||
LOGFILE=/var/log/pp-suspend.log
|
||||
|
||||
if grep -q 1.1 /proc/device-tree/model
|
||||
then
|
||||
DTR=358
|
||||
AP_READY=354
|
||||
else
|
||||
DTR=34
|
||||
AP_READY=231
|
||||
fi
|
||||
|
||||
if [ ! -f ${LOGFILE} ]; then
|
||||
touch ${LOGFILE}
|
||||
fi
|
||||
|
||||
prepare_suspend() {
|
||||
# Enable URC caching
|
||||
echo -ne 'AT+QCFG="urc/cache",1\r' > /dev/ttyS2
|
||||
|
||||
# Put modem in power saving mode
|
||||
# Note: GPIO231 is WAKEUP_IN on BH and AP_READY on CE
|
||||
# - BH: WAKEUP_IN must be high to enable power saving mode
|
||||
# - CE: AP_READY (active low) must be high to indicate host sleep
|
||||
# In both cases DTR (GPIO358) must be high to enable power saving mode
|
||||
NOW=`date`
|
||||
echo "$NOW Entering suspend" >> ${LOGFILE}
|
||||
echo 1 > /sys/class/gpio/gpio${AP_READY}/value
|
||||
echo 1 > /sys/class/gpio/gpio${DTR}/value
|
||||
echo -ne 'AT+QSCLK=1\r' > /dev/ttyS2
|
||||
}
|
||||
|
||||
resume_all() {
|
||||
# Wake up modem
|
||||
echo -ne 'AT+QSCLK=0\r' > /dev/ttyS2
|
||||
echo 0 > /sys/class/gpio/gpio${AP_READY}/value
|
||||
echo 0 > /sys/class/gpio/gpio${DTR}/value
|
||||
NOW=`date`
|
||||
echo "$NOW Exiting suspend" >> ${LOGFILE}
|
||||
|
||||
# Disable URC caching
|
||||
echo -ne 'AT+QCFG="urc/cache",0\r' > /dev/ttyS2
|
||||
}
|
||||
|
||||
case $1 in
|
||||
pre) prepare_suspend ;;
|
||||
post) resume_all ;;
|
||||
esac
|
||||
Reference in New Issue
Block a user