1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-15 03:51:51 +00:00

Fix z8102 with gpiolib 2

This commit is contained in:
Ycarus (Yannick Chabanois) 2024-04-25 17:57:00 +02:00
parent 9d0985b6e2
commit 8c1505cd9f
2 changed files with 29 additions and 11 deletions

View file

@ -2,7 +2,7 @@
# Copyright (C) 2013 OpenWrt.org # Copyright (C) 2013 OpenWrt.org
# Copyright (C) 2023 Yannick Chabanois (Ycarus) for OpenMPTCProuter # Copyright (C) 2023 Yannick Chabanois (Ycarus) for OpenMPTCProuter
START=58 START=99
USE_PROCD=1 USE_PROCD=1
log() { log() {
@ -18,8 +18,10 @@ modem1()
#echo "0" > /sys/class/gpio/gpio${i}/value #echo "0" > /sys/class/gpio/gpio${i}/value
if [ -e /sys/class/gpio/sim1/value ]; then if [ -e /sys/class/gpio/sim1/value ]; then
echo "0" > /sys/class/gpio/sim1/value echo "0" > /sys/class/gpio/sim1/value
else elif [ -f /usr/bin/gpiofind ]; then
gpioset `gpiofind "sim1"`=0 gpioset `gpiofind "sim1"`=0
else
gpioset -t0 sim1=0
fi fi
# stop modem 1 # stop modem 1
@ -29,8 +31,10 @@ modem1()
#echo "0" > /sys/class/gpio/gpio${i}/value #echo "0" > /sys/class/gpio/gpio${i}/value
if [ -e /sys/class/gpio/modem1/value ]; then if [ -e /sys/class/gpio/modem1/value ]; then
echo "0" > /sys/class/gpio/modem1/value echo "0" > /sys/class/gpio/modem1/value
else elif [ -f /usr/bin/gpiofind ]; then
gpioset `gpiofind "modem1"`=0 gpioset `gpiofind "modem1"`=0
else
gpioset -t0 modem1=0
fi fi
sleep 1 sleep 1
@ -39,8 +43,10 @@ modem1()
#echo "1" > /sys/class/gpio/gpio${i}/value #echo "1" > /sys/class/gpio/gpio${i}/value
if [ -e /sys/class/gpio/modem1/value ]; then if [ -e /sys/class/gpio/modem1/value ]; then
echo "1" > /sys/class/gpio/modem1/value echo "1" > /sys/class/gpio/modem1/value
else elif [ -f /usr/bin/gpiofind ]; then
gpioset `gpiofind "modem1"`=1 gpioset `gpiofind "modem1"`=1
else
gpioset -t0 modem1=1
fi fi
} }
modem2() modem2()
@ -52,8 +58,10 @@ modem2()
#echo "0" > /sys/class/gpio/gpio${i}/value #echo "0" > /sys/class/gpio/gpio${i}/value
if [ -e /sys/class/gpio/sim2/value ]; then if [ -e /sys/class/gpio/sim2/value ]; then
echo "0" > /sys/class/gpio/sim2/value echo "0" > /sys/class/gpio/sim2/value
else elif [ -f /usr/bin/gpiofind ]; then
gpioset `gpiofind "sim2"`=0 gpioset `gpiofind "sim2"`=0
else
gpioset -t0 sim2=0
fi fi
# stop modem 2 # stop modem 2
@ -63,8 +71,10 @@ modem2()
#echo "0" > /sys/class/gpio/gpio${i}/value #echo "0" > /sys/class/gpio/gpio${i}/value
if [ -e /sys/class/gpio/modem2/value ]; then if [ -e /sys/class/gpio/modem2/value ]; then
echo "0" > /sys/class/gpio/modem2/value echo "0" > /sys/class/gpio/modem2/value
else elif [ -f /usr/bin/gpiofind ]; then
gpioset `gpiofind "modem2"`=0 gpioset `gpiofind "modem2"`=0
else
gpioset -t0 modem2=0
fi fi
sleep 1 sleep 1
@ -73,8 +83,10 @@ modem2()
#echo "1" > /sys/class/gpio/gpio${i}/value #echo "1" > /sys/class/gpio/gpio${i}/value
if [ -e /sys/class/gpio/modem2/value ]; then if [ -e /sys/class/gpio/modem2/value ]; then
echo "1" > /sys/class/gpio/modem2/value echo "1" > /sys/class/gpio/modem2/value
else elif [ -f /usr/bin/gpiofind ]; then
gpioset `gpiofind "modem2"`=1 gpioset `gpiofind "modem2"`=1
else
gpioset -t0 modem2=1
fi fi
} }
start_service() start_service()

View file

@ -7,11 +7,17 @@
while true while true
do do
#echo "1" > /sys/class/gpio/gpio${i}/value #echo "1" > /sys/class/gpio/gpio${i}/value
gpioset `gpiofind "watchdog"`=1 2>&1 >/dev/null if [ -f /usr/bin/gpiofind ]; then
gpioset --hold-period 100ms -t0 watchdog=1 2>&1 >/dev/null gpioset `gpiofind "watchdog"`=1 2>&1 >/dev/null
else
gpioset --hold-period 100ms -t0 watchdog=1 2>&1 >/dev/null
fi
sleep 1 sleep 1
#echo "0" > /sys/class/gpio/gpio${i}/value #echo "0" > /sys/class/gpio/gpio${i}/value
gpioset `gpiofind "watchdog"`=0 2>&1 >/dev/null if [ -f /usr/bin/gpiofind ]; then
gpioset --hold-period 100ms -t0 watchdog=0 2>&1 >/dev/null gpioset `gpiofind "watchdog"`=0 2>&1 >/dev/null
else
gpioset --hold-period 100ms -t0 watchdog=0 2>&1 >/dev/null
fi
sleep 1 sleep 1
done done