diff --git a/root/target/linux/ipq40xx/base-files/lib/preinit/82_modem_power b/root/target/linux/ipq40xx/base-files/lib/preinit/82_modem_power new file mode 100644 index 00000000..2d77ee72 --- /dev/null +++ b/root/target/linux/ipq40xx/base-files/lib/preinit/82_modem_power @@ -0,0 +1,20 @@ +set_state() { + local label="$1" + local disable + + [ -e "/sys/class/gpio/${label}_power/value" ] || return + + config_get disable ${label} disable + [ "${disable}" -eq 1 ] && \ + /sbin/mctl -s -m "${label}" || \ + /sbin/mctl -p -m "${label}" +} + +do_power_modem() { + /sbin/mctl -p || { + config_load system + config_foreach set_state mctl + } +} + +boot_hook_add preinit_main do_power_modem