diff options
Diffstat (limited to 'data/fcc-unlock/1eac')
-rw-r--r-- | data/fcc-unlock/1eac | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/data/fcc-unlock/1eac b/data/fcc-unlock/1eac new file mode 100644 index 00000000..1068d9c2 --- /dev/null +++ b/data/fcc-unlock/1eac @@ -0,0 +1,34 @@ +#!/bin/bash + +# SPDX-License-Identifier: CC0-1.0 +# 2021 Aleksander Morgado <aleksander@aleksander.es> +# +# Quectel EM120 FCC unlock operation +# + +# require program name and at least 2 arguments +[ $# -lt 2 ] && exit 1 + +# first argument is DBus path, not needed here +shift + +# second and next arguments are control port names +for PORT in "$@"; do + # match port type in Linux 5.14 and newer + grep -q MBIM /sys/class/wwan/${PORT}/type 2>/dev/null && { + MBIM_PORT=$PORT + break + } + # match port name in Linux 5.13 + [[ $PORT == *"MBIM"* ]] && { + MBIM_PORT=$PORT + break + } +done + +# fail if no MBIM port exposed +[ -n "${MBIM_PORT}" ] || exit 2 + +# run mbimcli operation +mbimcli --device-open-proxy --device=/dev/${MBIM_PORT} --quectel-set-radio-state=on +exit $? |