From 46f5937ad1472050eaabd776d3d7a473bdc104e1 Mon Sep 17 00:00:00 2001 From: Valtteri Holopainen Date: Thu, 13 Aug 2020 12:52:41 +0300 Subject: [PATCH] modemmanager: added new proto options Added signal refresh rate option modemmanager: update readme.md Added description for added proto options. Added compile option to compile --with-at-command-via-dbus for allowing AT commands to modem without --debug flag Changes to be committed: modified: net/modemmanager/Config.in modified: net/modemmanager/Makefile modified: net/modemmanager/files/modemmanager.init modified: net/modemmanager/files/modemmanager.proto modified: README.md Signed-off-by: Valtteri Holopainen --- net/modemmanager/Config.in | 6 ++++++ net/modemmanager/Makefile | 4 ++++ net/modemmanager/README.md | 4 ++++ net/modemmanager/files/modemmanager.proto | 13 +++++++++++-- 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/net/modemmanager/Config.in b/net/modemmanager/Config.in index 28e65a319..283a9e10a 100644 --- a/net/modemmanager/Config.in +++ b/net/modemmanager/Config.in @@ -12,4 +12,10 @@ depends on PACKAGE_modemmanager default y help Compile ModemManager with QMI support + + config MODEMMANAGER_WITH_AT_COMMAND_VIA_DBUS + bool "Allow AT commands via DBus" + default n + help + Compile ModemManager allowing AT commands without debug flag endmenu diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 9f1d33317..139486953 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -59,6 +59,10 @@ CONFIGURE_ARGS += \ --disable-rpath \ --disable-gtk-doc +ifeq ($(CONFIG_MODEMMANAGER_WITH_AT_COMMAND_VIA_DBUS),y) + CONFIGURE_ARGS += --with-at-command-via-dbus +endif + ifdef CONFIG_MODEMMANAGER_WITH_MBIM CONFIGURE_ARGS += --with-mbim else diff --git a/net/modemmanager/README.md b/net/modemmanager/README.md index ea86568c9..c9d880ea4 100644 --- a/net/modemmanager/README.md +++ b/net/modemmanager/README.md @@ -23,6 +23,7 @@ Once installed, you can configure the 2G/3G/4G modem connections directly in option pincode '7423' option iptype 'ipv4' option lowpower '1' + option signalrate '30' Only 'device' and 'proto' are mandatory options, the remaining ones are all optional. @@ -34,3 +35,6 @@ allowing all protocols. The 'iptype' option supports any of these values: 'ipv4', 'ipv6' or 'ipv4v6'. It will default to 'ipv4' if not given. + +The 'signalrate' option set's the signal refresh rate (in seconds) for the device. +You can call signal info with command: mmcli -m 0 --signal-get diff --git a/net/modemmanager/files/modemmanager.proto b/net/modemmanager/files/modemmanager.proto index 07147b1f3..d24910b98 100755 --- a/net/modemmanager/files/modemmanager.proto +++ b/net/modemmanager/files/modemmanager.proto @@ -343,6 +343,7 @@ proto_modemmanager_init_config() { proto_config_add_string password proto_config_add_string pincode proto_config_add_string iptype + proto_config_add_int signalrate proto_config_add_boolean lowpower proto_config_add_defaults } @@ -354,11 +355,11 @@ proto_modemmanager_setup() { local bearermethod_ipv4 bearermethod_ipv6 auth cliauth local operatorname operatorid registration accesstech signalquality - local device apn allowedauth username password pincode iptype metric + local device apn allowedauth username password pincode iptype metric signalrate local address prefix gateway mtu dns1 dns2 - json_get_vars device apn allowedauth username password pincode iptype metric + json_get_vars device apn allowedauth username password pincode iptype metric signalrate # validate sysfs path given in config [ -n "${device}" ] || { @@ -403,6 +404,14 @@ proto_modemmanager_setup() { return 1 } + # check if Signal refresh rate is set + if [ -n "${signalrate}" ] && [ "${signalrate}" -eq "${signalrate}" ] 2>/dev/null; then + echo "setting signal refresh rate to ${signalrate} seconds" + mmcli --modem="${device}" --signal-setup="${signalrate}" + else + echo "signal refresh rate is not set" + fi + # log additional useful information modemstatus=$(mmcli --modem="${device}" --output-keyvalue) operatorname=$(modemmanager_get_field "${modemstatus}" "modem.3gpp.operator-name")