From 1f3488223cfe1996ed9aad373e0cfdac599ce318 Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Sun, 22 Aug 2021 15:50:33 +1000 Subject: [PATCH 01/24] modemmanager: bump to 1.16.10 Signed-off-by: Nicholas Smith (cherry picked from commit 858d61b1483ebcbb4ef5e6a8be54e92c957e640d) --- net/modemmanager/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 19f94b01f1..3475e4e242 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -8,15 +8,15 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager -PKG_VERSION:=1.16.6 +PKG_VERSION:=1.16.10 PKG_RELEASE:=1 PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager -PKG_HASH:=2a90b6260f66d3135609d62667ada73416694d717e7fd9b73223e3703a499617 +PKG_HASH:=2ccf1f716c2d121e8e6709bcf8af29ee86971a90adacca2e8d6288b30278862e PKG_BUILD_DIR:=$(BUILD_DIR)/ModemManager-$(PKG_VERSION) -PKG_MAINTAINER:=Nicholas Smith +PKG_MAINTAINER:=Nicholas Smith PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE_FILES:=COPYING From bd215932a214ee2b81257fb86f6f65f2f1d61f37 Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Sun, 22 Aug 2021 16:12:36 +1000 Subject: [PATCH 02/24] modemmanager: switch to autorelease Signed-off-by: Nicholas Smith (cherry picked from commit c7ec9ec410d8fdaff2b749ff5932ba20d8f2522d) --- net/modemmanager/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 3475e4e242..b2c4f6c1eb 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager PKG_VERSION:=1.16.10 -PKG_RELEASE:=1 +PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager From 11cec09fc3b1776ba3adf1a1db624c162a33e7f3 Mon Sep 17 00:00:00 2001 From: Kuan-Yi Li Date: Mon, 20 Sep 2021 21:52:09 +0800 Subject: [PATCH 03/24] modemmanager: bump to 1.18.2 Signed-off-by: Kuan-Yi Li (cherry picked from commit 2937f0024b598b5b9bdbeb5475866f2396833523) --- net/modemmanager/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index b2c4f6c1eb..c89a0b0f65 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager -PKG_VERSION:=1.16.10 +PKG_VERSION:=1.18.2 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager -PKG_HASH:=2ccf1f716c2d121e8e6709bcf8af29ee86971a90adacca2e8d6288b30278862e +PKG_HASH:=374be158ae1c1fb38a29eef1cc3cdf89ff3536b48ff1320d208ab204ea6c5f8a PKG_BUILD_DIR:=$(BUILD_DIR)/ModemManager-$(PKG_VERSION) PKG_MAINTAINER:=Nicholas Smith From 00a460e77e5d48a5b4d0554261441221e3b8acb2 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Mon, 4 Oct 2021 21:40:22 +0200 Subject: [PATCH 04/24] modemmanager: add support for wwan subsystem in hotplug WWAN devices may now be exposed in the new 'wwan' subsystem in the kernel (since 5.13), initially applicable to devices exposed in PCIe (no USB), but at some point may also apply to USB devices that until now were exposed via other subsystems (e.g. usbmisc, tty). Signed-off-by: Aleksander Morgado (cherry picked from commit 2a31359c478025850a9feeb684b758ede62bf9c4) --- net/modemmanager/Makefile | 3 +++ net/modemmanager/files/25-modemmanager-wwan | 15 +++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 net/modemmanager/files/25-modemmanager-wwan diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index c89a0b0f65..ce87b0a36a 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -131,6 +131,9 @@ define Package/modemmanager/install $(INSTALL_DIR) $(1)/etc/hotplug.d/tty $(INSTALL_DATA) ./files/25-modemmanager-tty $(1)/etc/hotplug.d/tty + $(INSTALL_DIR) $(1)/etc/hotplug.d/wwan + $(INSTALL_DATA) ./files/25-modemmanager-wwan $(1)/etc/hotplug.d/wwan + $(INSTALL_DIR) $(1)/lib/netifd/proto $(INSTALL_BIN) ./files/modemmanager.proto $(1)/lib/netifd/proto/modemmanager.sh endef diff --git a/net/modemmanager/files/25-modemmanager-wwan b/net/modemmanager/files/25-modemmanager-wwan new file mode 100644 index 0000000000..c4dc6b897d --- /dev/null +++ b/net/modemmanager/files/25-modemmanager-wwan @@ -0,0 +1,15 @@ +#!/bin/sh +# Copyright (C) 2021 Aleksander Morgado + +# Load hotplug common utilities +. /usr/share/ModemManager/modemmanager.common + +# We require a device name +[ -n "$DEVNAME" ] || exit + +# Always make sure the rundir exists +mkdir -m 0755 -p "${MODEMMANAGER_RUNDIR}" + +# Report wwan +mm_log "${ACTION} wwan control port ${DEVNAME}: event processed" +mm_report_event "${ACTION}" "${DEVNAME}" "wwan" "/sys${DEVPATH}" From 4d8a723d922bba0fe7c77ee2c70f2faaa98b036c Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Fri, 3 Dec 2021 15:57:33 +0100 Subject: [PATCH 05/24] ModemManager: refactoring procd init script The way the init script is written now, we get a bad output when calling the ubus service backend. ubus call service list "{'verbose':true,'name':'modemmanager'}" >{ > "modemmanager": { > "instances": { > "instance1": { > "running": true, > "pid": 20511, > "command": [ > "sh", > "-c", > ". >/usr/share/ModemManager/modemmanager.common; \t >mkdir -m 0755 -p /var/run/modemmanager; \t >mm_cleanup_interfaces; \t >( mm_report_events_from_cache ) >/dev/null 2>&1 & \t >/usr/sbin/ModemManager" > ], > "term_timeout": 5, > "respawn": { > "threshold": 3600, > "timeout": 5, > "retry": 5 > }, > "pidfile":"/var/run/modemmanager/modemmanager.pid" > } > } > } >}" I also get the output in the log that the PID file cannot be created. > daemon.err procd: Failed to remove pidfile: :No such file or directory The changes in this commit fixes this issues, by moving startup into a wrapper script. Signed-off-by: Florian Eckert (cherry picked from commit 0b027b131c97ec901c3b3dc9211ee434d21291dc) --- net/modemmanager/Makefile | 1 + net/modemmanager/files/modemmanager.init | 10 +++--- .../files/usr/sbin/ModemManager-wrapper | 33 +++++++++++++++++++ 3 files changed, 38 insertions(+), 6 deletions(-) create mode 100644 net/modemmanager/files/usr/sbin/ModemManager-wrapper diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index ce87b0a36a..db59989b20 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -98,6 +98,7 @@ define Package/modemmanager/install $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ModemManager $(1)/usr/sbin + $(INSTALL_BIN) ./files/usr/sbin/ModemManager-wrapper $(1)/usr/sbin $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mmcli $(1)/usr/bin diff --git a/net/modemmanager/files/modemmanager.init b/net/modemmanager/files/modemmanager.init index b3f9f92901..a3f6c1b12a 100755 --- a/net/modemmanager/files/modemmanager.init +++ b/net/modemmanager/files/modemmanager.init @@ -22,14 +22,12 @@ start_service() { # it starts. # # All these commands need to be executed on every MM start, even after - # procd-triggered respawns, which is why they're all included as instance command + # procd-triggered respawns, which is why this is wrapped in a startup + # wrapper script called '/usr/sbin/ModemManager-wrapper'. # + . /usr/share/ModemManager/modemmanager.common procd_open_instance - procd_set_param command sh -c ". /usr/share/ModemManager/modemmanager.common; \ - mkdir -m 0755 -p ${MODEMMANAGER_RUNDIR}; \ - mm_cleanup_interfaces; \ - ( mm_report_events_from_cache ) >/dev/null 2>&1 & \ - /usr/sbin/ModemManager" + procd_set_param command /usr/sbin/ModemManager-wrapper procd_set_param respawn "${respawn_threshold:-3600}" "${respawn_timeout:-5}" "${respawn_retry:-5}" procd_set_param pidfile "${MODEMMANAGER_PID_FILE}" procd_close_instance diff --git a/net/modemmanager/files/usr/sbin/ModemManager-wrapper b/net/modemmanager/files/usr/sbin/ModemManager-wrapper new file mode 100644 index 0000000000..f5fb6d1f2a --- /dev/null +++ b/net/modemmanager/files/usr/sbin/ModemManager-wrapper @@ -0,0 +1,33 @@ +#!/bin/sh + +trap_with_arg() { + func="$1" ; shift + for sig ; do + # shellcheck disable=SC2064 + trap "$func $sig" "$sig" + done +} + +func_trap() { + logger "ModemManager-wrapper[$$]" "Sending signal ${1}..." + kill "-${1}" "$CHILD" 2>/dev/null +} + +main() { + . /usr/share/ModemManager/modemmanager.common + + trap_with_arg func_trap INT TERM KILL + + mkdir -p "${MODEMMANAGER_RUNDIR}" + chmod 0755 "${MODEMMANAGER_RUNDIR}" + mm_cleanup_interfaces + + /usr/sbin/ModemManager "$@" 1>/dev/null 2>/dev/null & + CHILD="$!" + sleep 2 + mm_report_events_from_cache + + wait "$CHILD" +} + +main "$@" From f0da4298ab1bd74c649a54286fe55b05aff46156 Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Mon, 6 Dec 2021 10:33:05 +0100 Subject: [PATCH 06/24] ModemManager: add service options Signed-off-by: Florian Eckert (cherry picked from commit dc7095baff0172760090a4c9f88bca11f6f38838) --- net/modemmanager/files/modemmanager.init | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/net/modemmanager/files/modemmanager.init b/net/modemmanager/files/modemmanager.init index a3f6c1b12a..7f014dc56e 100755 --- a/net/modemmanager/files/modemmanager.init +++ b/net/modemmanager/files/modemmanager.init @@ -4,6 +4,8 @@ USE_PROCD=1 START=70 +LOG_LEVEL="INFO" + stop_service() { # Load common utils . /usr/share/ModemManager/modemmanager.common @@ -28,6 +30,8 @@ start_service() { . /usr/share/ModemManager/modemmanager.common procd_open_instance procd_set_param command /usr/sbin/ModemManager-wrapper + procd_append_param command --log-level="$LOG_LEVEL" + [ "$LOG_LEVEL" = "DEBUG" ] && procd_append_param command --debug procd_set_param respawn "${respawn_threshold:-3600}" "${respawn_timeout:-5}" "${respawn_retry:-5}" procd_set_param pidfile "${MODEMMANAGER_PID_FILE}" procd_close_instance From 463110848ff4b0fc1f31c51689413e12a304a112 Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Mon, 13 Dec 2021 13:06:47 +0100 Subject: [PATCH 07/24] modemmanager: refactoring hotplug debug logging The output of the hotplug is very chatty and floods the log with messages that are not necessary in functioning operation. So that the log can be filtered. A log level was added to each message as the first opiton on mm_log function call. In addition, the facility of the hotplug script has been set to daemon, which in my view fits better than user. Signed-off-by: Florian Eckert (cherry picked from commit 45a56a889943b437f78fa2bfca3d5d8ac555c77e) --- net/modemmanager/files/modemmanager.common | 37 +++++++++++----------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/net/modemmanager/files/modemmanager.common b/net/modemmanager/files/modemmanager.common index b898a7798f..0f5638ceff 100644 --- a/net/modemmanager/files/modemmanager.common +++ b/net/modemmanager/files/modemmanager.common @@ -20,7 +20,8 @@ MODEMMANAGER_EVENTS_CACHE="${MODEMMANAGER_RUNDIR}/events.cache" # Common logging mm_log() { - logger -t "ModemManager" "hotplug: $*" + local level="$1"; shift + logger -p "daemon.${level}" -t "ModemManager[$$]" "hotplug: $*" } ################################################################################ @@ -160,7 +161,7 @@ mm_wait_for_modem() { while [ $n -ge 0 ]; do [ -d "${sysfspath}" ] || { - mm_log "error: ignoring modem detection request: no device at ${sysfspath}" + mm_log "error" "ignoring modem detection request: no device at ${sysfspath}" proto_set_available "${cfg}" 0 return 1 } @@ -168,10 +169,10 @@ mm_wait_for_modem() { # Check if the modem exists at the given sysfs path if ! mmcli -m "${sysfspath}" > /dev/null 2>&1 then - mm_log "error: modem not detected at sysfs path" + mm_log "error" "modem not detected at sysfs path" else - mm_log "modem exported successfully at ${sysfspath}" - mm_log "setting interface '${cfg}' as available" + mm_log "info" "modem exported successfully at ${sysfspath}" + mm_log "info" "setting interface '${cfg}' as available" proto_set_available "${cfg}" 1 return 0 fi @@ -180,7 +181,7 @@ mm_wait_for_modem() { n=$((n-step)) done - mm_log "error: timed out waiting for the modem to get exported at ${sysfspath}" + mm_log "error" "timed out waiting for the modem to get exported at ${sysfspath}" proto_set_available "${cfg}" 0 return 2 } @@ -192,7 +193,7 @@ mm_report_modem_wait() { parent_sysfspath=$(mm_find_physdev_sysfs_path "$sysfspath") [ -n "${parent_sysfspath}" ] || { - mm_log "error: parent device sysfspath not found" + mm_log "error" "parent device sysfspath not found" return } @@ -203,23 +204,23 @@ mm_report_modem_wait() { cfg=$(mm_get_modem_config "${parent_sysfspath}") if [ -n "${cfg}" ]; then - mm_log "interface '${cfg}' is set to configure device '${parent_sysfspath}'" - mm_log "now waiting for modem at sysfs path ${parent_sysfspath}" + mm_log "info" "interface '${cfg}' is set to configure device '${parent_sysfspath}'" + mm_log "info" "now waiting for modem at sysfs path ${parent_sysfspath}" mm_set_modem_wait_status "${parent_sysfspath}" "processed" # Launch subshell for the explicit wait ( mm_wait_for_modem "${cfg}" "${parent_sysfspath}" ) > /dev/null 2>&1 & else - mm_log "no need to wait for modem at sysfs path ${parent_sysfspath}" + mm_log "info" "no need to wait for modem at sysfs path ${parent_sysfspath}" mm_set_modem_wait_status "${parent_sysfspath}" "ignored" fi ;; "processed") - mm_log "already waiting for modem at sysfs path ${parent_sysfspath}" + mm_log "info" "already waiting for modem at sysfs path ${parent_sysfspath}" ;; "ignored") ;; *) - mm_log "error: unknown status read for device at sysfs path ${parent_sysfspath}" + mm_log "error" "unknown status read for device at sysfs path ${parent_sysfspath}" ;; esac } @@ -249,7 +250,7 @@ mm_cleanup_interface_by_sysfspath() { cfg=$(mm_get_modem_config "$dev") [ -n "${cfg}" ] || return - mm_log "setting interface '$cfg' as unavailable" + mm_log "info" "setting interface '$cfg' as unavailable" proto_set_available "${cfg}" 0 } @@ -277,7 +278,7 @@ mm_report_event() { esac # Report the event - mm_log "event reported: action=${action}, name=${name}, subsystem=${subsystem}" + mm_log "debug" "event reported: action=${action}, name=${name}, subsystem=${subsystem}" mmcli --report-kernel-event="action=${action},name=${name},subsystem=${subsystem}" 1>/dev/null 2>&1 & # Wait for added modem if a sysfspath is given @@ -293,7 +294,7 @@ mm_report_event_from_cache_line() { subsystem=$(echo "${event_line}" | awk -F ',' '{ print $3 }') sysfspath=$(echo "${event_line}" | awk -F ',' '{ print $4 }') - mm_log "cached event found: action=${action}, name=${name}, subsystem=${subsystem}, sysfspath=${sysfspath}" + mm_log "debug" "cached event found: action=${action}, name=${name}, subsystem=${subsystem}, sysfspath=${sysfspath}" mm_report_event "${action}" "${name}" "${subsystem}" "${sysfspath}" } @@ -308,11 +309,11 @@ mm_report_events_from_cache() { # Wait for ModemManager to be available in the bus while [ $n -ge 0 ]; do sleep $step - mm_log "checking if ModemManager is available..." + mm_log "info" "checking if ModemManager is available..." if ! mmcli -L >/dev/null 2>&1 then - mm_log "ModemManager not yet available" + mm_log "info" "ModemManager not yet available" else mmrunning=1 break @@ -321,7 +322,7 @@ mm_report_events_from_cache() { done [ ${mmrunning} -eq 1 ] || { - mm_log "error: couldn't report initial kernel events: ModemManager not running" + mm_log "error" "couldn't report initial kernel events: ModemManager not running" return } From cf0fd6ac275ea20c8a70b9e74624ed821a9c6d3f Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Wed, 12 Jan 2022 15:41:55 +0100 Subject: [PATCH 08/24] modemmanager: remove 2s timeout before reporting cached events When ModemManager is started on boot we may end up with hotplug events reported directly to the daemon, plus some others already cached in the cache file before the daemon was started. If the cached events correspond to the same device that is still notifying ports directly, we may end up with a modem object created before the cached events have been emitted, so the modem may not handle all control/data ports it should. E.g.: - modem detected - hotplug event for wwan0 port, cached as MM not running - hotplug event for cdc-wdm0 port, cached as MM not running - hotplug event for ttyUSB0, cached as MM not running - MM starts - hotplug event for ttyUSB1, directly processed as MM is running - hotplug event for ttyUSB2, directly processed as MM is running - modem object created with ttyUSB1 and ttyUSB2 - 2s after MM starts, cached events for wwan0, cdc-wdm0 and ttyUSB0 happen, but are ignored because the modem object has already been created MM expects that ports of the same device are reported with less than 1500ms in between ports. In other words, if ports are reported more than 1500ms after the last reported port, they may get ignored. If we remove the 2s timeout, the report of the cached events will happen as soon as MM starts, which makes it much more likely to happen in the timeslot that MM expects for ports of the same device reported. The logic is still not perfect, and we may also need to increase that 1500ms timeout inside MM, but removing the 2s timeout right away here makes sense. This 2s timeout was introduced along with the new wrapper launcher for the daemon, it didn't exist before. Signed-off-by: Aleksander Morgado (cherry picked from commit ab061c8ddd9ea3d903ca171b0989ad8f557516bb) --- net/modemmanager/files/usr/sbin/ModemManager-wrapper | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/modemmanager/files/usr/sbin/ModemManager-wrapper b/net/modemmanager/files/usr/sbin/ModemManager-wrapper index f5fb6d1f2a..4fd64227fe 100644 --- a/net/modemmanager/files/usr/sbin/ModemManager-wrapper +++ b/net/modemmanager/files/usr/sbin/ModemManager-wrapper @@ -24,7 +24,7 @@ main() { /usr/sbin/ModemManager "$@" 1>/dev/null 2>/dev/null & CHILD="$!" - sleep 2 + mm_report_events_from_cache wait "$CHILD" From 7b0bd1eb0e2eaf937a4f62c180a89bc90b7a6374 Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Fri, 3 Dec 2021 21:26:25 +1000 Subject: [PATCH 09/24] modemmanager: bump to 1.18.4 with patch The included patch corrects an issue preventing udev rules from being parsed correctly. [1][2] This patch should not be needed after the next release. [3] More information: [1] https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/commit/e9f254ba3f923248efffe4fd458dc5e5469e0f73 [2] https://lists.freedesktop.org/archives/modemmanager-devel/2021-December/009024.html [3] https://lists.freedesktop.org/archives/modemmanager-devel/2021-December/009022.html Signed-off-by: Nicholas Smith (cherry picked from commit 8a878440bf4a4b699b1aefa53c364a18e66f6d7f) --- net/modemmanager/Makefile | 4 +- ...-avoid-0-9-as-shell-globbing-patters.patch | 60 +++++++++++++++++++ 2 files changed, 62 insertions(+), 2 deletions(-) create mode 100644 net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index db59989b20..585a044946 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager -PKG_VERSION:=1.18.2 +PKG_VERSION:=1.18.4 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager -PKG_HASH:=374be158ae1c1fb38a29eef1cc3cdf89ff3536b48ff1320d208ab204ea6c5f8a +PKG_HASH:=11fb970f63e2da88df4b6d8759e4ee649944c515244b979bf50a7a6df1d7f199 PKG_BUILD_DIR:=$(BUILD_DIR)/ModemManager-$(PKG_VERSION) PKG_MAINTAINER:=Nicholas Smith diff --git a/net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch b/net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch new file mode 100644 index 0000000000..1b919ba2ce --- /dev/null +++ b/net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch @@ -0,0 +1,60 @@ +From e9f254ba3f923248efffe4fd458dc5e5469e0f73 Mon Sep 17 00:00:00 2001 +From: Aleksander Morgado +Date: Wed, 1 Dec 2021 21:40:00 +0100 +Subject: [PATCH] udev: avoid [0-9]* as shell globbing patterns + +The udev rules expect matches based on shell globbing pattern, not +based on regex. This means that "[0-9]*" doesn't mean "zero or more +digits", it actually means "one digit and zero or more other +characters". + +So, avoid the regex like match, even if it worked for us, because it +didn't mean what we thought it meant, plus, it breaks our custom udev +rules processing logic, in which we convert the input patterns into +real regex expressions. + +See https://bbs.archlinux.org/viewtopic.php?pid=1415916#p1415916 + +While at it, also make sure that the wildcard matching is done +exclusively for prefix and suffix matches, never in the middle of +a string, or our custom rules parser would not match correctly. +--- + plugins/qcom-soc/77-mm-qcom-soc.rules | 8 ++++---- + src/80-mm-candidate.rules | 2 +- + 2 files changed, 5 insertions(+), 5 deletions(-) + +--- a/plugins/qcom-soc/77-mm-qcom-soc.rules ++++ b/plugins/qcom-soc/77-mm-qcom-soc.rules +@@ -24,17 +24,17 @@ ENV{ID_MM_QCOM_SOC}="1" + ENV{ID_MM_PHYSDEV_UID}="qcom-soc" + + # port type hints for the rpmsgexport-ed ports +-SUBSYSTEM=="rpmsg", ATTR{name}=="DATA[0-9]*_CNTL", ENV{ID_MM_PORT_TYPE_QMI}="1" +-SUBSYSTEM=="rpmsg", ATTR{name}=="DATA[0-9]", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}="1" ++SUBSYSTEM=="rpmsg", ATTR{name}=="DATA*", ATTR{name}=="*_CNTL", ENV{ID_MM_PORT_TYPE_QMI}="1" ++SUBSYSTEM=="rpmsg", ATTR{name}=="DATA*", ATTR{name}!="*_CNTL", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}="1" + + # ignore every other port without explicit hints + SUBSYSTEM=="rpmsg", ENV{ID_MM_PORT_TYPE_QMI}!="1", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}!="1", ENV{ID_MM_PORT_IGNORE}="1" + + # explicitly ignore ports intended for USB tethering (DATA40, DATA40_CNTL) + SUBSYSTEM=="rpmsg", ATTR{name}=="DATA40*", ENV{ID_MM_PORT_IGNORE}="1" +-KERNEL=="rmnet_usb[0-9]*", ENV{ID_MM_PORT_IGNORE}="1" ++KERNEL=="rmnet_usb*", ENV{ID_MM_PORT_IGNORE}="1" + + # flag all rpmsg ports under this plugin as candidate +-KERNEL=="rpmsg[0-9]*", SUBSYSTEM=="rpmsg", ENV{ID_MM_CANDIDATE}="1" ++KERNEL=="rpmsg*", SUBSYSTEM=="rpmsg", ENV{ID_MM_CANDIDATE}="1" + + LABEL="mm_qcom_soc_end" +--- a/src/80-mm-candidate.rules ++++ b/src/80-mm-candidate.rules +@@ -15,7 +15,7 @@ KERNEL=="rfcomm*", DEVPATH=="*/virtual/* + + SUBSYSTEM=="tty", ENV{ID_MM_CANDIDATE}="1" + SUBSYSTEM=="net", ENV{ID_MM_CANDIDATE}="1" +-KERNEL=="cdc-wdm[0-9]*", SUBSYSTEM=="usbmisc", ENV{ID_MM_CANDIDATE}="1" ++KERNEL=="cdc-wdm*", SUBSYSTEM=="usbmisc", ENV{ID_MM_CANDIDATE}="1" + + # WWAN subsystem port handling + # - All USB devices ignored for now, only PCI devices expected From 4616c35a9c2640f0973e7ceba2bd2e1a50c43510 Mon Sep 17 00:00:00 2001 From: Kuan-Yi Li Date: Fri, 4 Mar 2022 02:47:14 +0800 Subject: [PATCH 10/24] modemmanager: bump to 1.18.6 Remove upstreamed patch. Signed-off-by: Kuan-Yi Li (cherry picked from commit de9fce568b4d1a2a12cd67312449b0825880c89b) --- net/modemmanager/Makefile | 4 +- ...-avoid-0-9-as-shell-globbing-patters.patch | 60 ------------------- 2 files changed, 2 insertions(+), 62 deletions(-) delete mode 100644 net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 585a044946..6d11f1e2ef 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager -PKG_VERSION:=1.18.4 +PKG_VERSION:=1.18.6 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager -PKG_HASH:=11fb970f63e2da88df4b6d8759e4ee649944c515244b979bf50a7a6df1d7f199 +PKG_HASH:=d4f804b31cf504239c5f1d4973c62095c00cba1ee9abb503718dac6d146a470a PKG_BUILD_DIR:=$(BUILD_DIR)/ModemManager-$(PKG_VERSION) PKG_MAINTAINER:=Nicholas Smith diff --git a/net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch b/net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch deleted file mode 100644 index 1b919ba2ce..0000000000 --- a/net/modemmanager/patches/010-udev-avoid-0-9-as-shell-globbing-patters.patch +++ /dev/null @@ -1,60 +0,0 @@ -From e9f254ba3f923248efffe4fd458dc5e5469e0f73 Mon Sep 17 00:00:00 2001 -From: Aleksander Morgado -Date: Wed, 1 Dec 2021 21:40:00 +0100 -Subject: [PATCH] udev: avoid [0-9]* as shell globbing patterns - -The udev rules expect matches based on shell globbing pattern, not -based on regex. This means that "[0-9]*" doesn't mean "zero or more -digits", it actually means "one digit and zero or more other -characters". - -So, avoid the regex like match, even if it worked for us, because it -didn't mean what we thought it meant, plus, it breaks our custom udev -rules processing logic, in which we convert the input patterns into -real regex expressions. - -See https://bbs.archlinux.org/viewtopic.php?pid=1415916#p1415916 - -While at it, also make sure that the wildcard matching is done -exclusively for prefix and suffix matches, never in the middle of -a string, or our custom rules parser would not match correctly. ---- - plugins/qcom-soc/77-mm-qcom-soc.rules | 8 ++++---- - src/80-mm-candidate.rules | 2 +- - 2 files changed, 5 insertions(+), 5 deletions(-) - ---- a/plugins/qcom-soc/77-mm-qcom-soc.rules -+++ b/plugins/qcom-soc/77-mm-qcom-soc.rules -@@ -24,17 +24,17 @@ ENV{ID_MM_QCOM_SOC}="1" - ENV{ID_MM_PHYSDEV_UID}="qcom-soc" - - # port type hints for the rpmsgexport-ed ports --SUBSYSTEM=="rpmsg", ATTR{name}=="DATA[0-9]*_CNTL", ENV{ID_MM_PORT_TYPE_QMI}="1" --SUBSYSTEM=="rpmsg", ATTR{name}=="DATA[0-9]", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}="1" -+SUBSYSTEM=="rpmsg", ATTR{name}=="DATA*", ATTR{name}=="*_CNTL", ENV{ID_MM_PORT_TYPE_QMI}="1" -+SUBSYSTEM=="rpmsg", ATTR{name}=="DATA*", ATTR{name}!="*_CNTL", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}="1" - - # ignore every other port without explicit hints - SUBSYSTEM=="rpmsg", ENV{ID_MM_PORT_TYPE_QMI}!="1", ENV{ID_MM_PORT_TYPE_AT_SECONDARY}!="1", ENV{ID_MM_PORT_IGNORE}="1" - - # explicitly ignore ports intended for USB tethering (DATA40, DATA40_CNTL) - SUBSYSTEM=="rpmsg", ATTR{name}=="DATA40*", ENV{ID_MM_PORT_IGNORE}="1" --KERNEL=="rmnet_usb[0-9]*", ENV{ID_MM_PORT_IGNORE}="1" -+KERNEL=="rmnet_usb*", ENV{ID_MM_PORT_IGNORE}="1" - - # flag all rpmsg ports under this plugin as candidate --KERNEL=="rpmsg[0-9]*", SUBSYSTEM=="rpmsg", ENV{ID_MM_CANDIDATE}="1" -+KERNEL=="rpmsg*", SUBSYSTEM=="rpmsg", ENV{ID_MM_CANDIDATE}="1" - - LABEL="mm_qcom_soc_end" ---- a/src/80-mm-candidate.rules -+++ b/src/80-mm-candidate.rules -@@ -15,7 +15,7 @@ KERNEL=="rfcomm*", DEVPATH=="*/virtual/* - - SUBSYSTEM=="tty", ENV{ID_MM_CANDIDATE}="1" - SUBSYSTEM=="net", ENV{ID_MM_CANDIDATE}="1" --KERNEL=="cdc-wdm[0-9]*", SUBSYSTEM=="usbmisc", ENV{ID_MM_CANDIDATE}="1" -+KERNEL=="cdc-wdm*", SUBSYSTEM=="usbmisc", ENV{ID_MM_CANDIDATE}="1" - - # WWAN subsystem port handling - # - All USB devices ignored for now, only PCI devices expected From 056ad9f504262ae5c3443cbd25a23ea86d76c7ad Mon Sep 17 00:00:00 2001 From: Federico Capoano Date: Mon, 17 Oct 2022 19:24:42 -0300 Subject: [PATCH 11/24] modemmanager: bump to 1.18.12 Signed-off-by: Federico Capoano --- net/modemmanager/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 6d11f1e2ef..295ee7fe2c 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager -PKG_VERSION:=1.18.6 +PKG_VERSION:=1.18.12 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=ModemManager-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/ModemManager -PKG_HASH:=d4f804b31cf504239c5f1d4973c62095c00cba1ee9abb503718dac6d146a470a +PKG_HASH:=b464e4925d955a6ca86dd08616e763b26ae46d7fd37dbe281678e34065b1e430 PKG_BUILD_DIR:=$(BUILD_DIR)/ModemManager-$(PKG_VERSION) PKG_MAINTAINER:=Nicholas Smith From bbf6e99a41b76c0c89fb9dcb8f07228403d8cd33 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Tue, 29 Mar 2022 13:12:43 +0200 Subject: [PATCH 12/24] modemmanager: install available FCC unlock scripts The FCC unlock scripts are installed but not enabled by default. Signed-off-by: Aleksander Morgado (cherry picked from commit e430420aa176af672e913a2e50c5911e3ea70ef3) --- net/modemmanager/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 295ee7fe2c..79ebfb6c80 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -120,6 +120,9 @@ define Package/modemmanager/install $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/ModemManager/*.conf $(1)/usr/share/ModemManager $(INSTALL_DATA) ./files/modemmanager.common $(1)/usr/share/ModemManager + $(INSTALL_DIR) $(1)/usr/share/ModemManager/fcc-unlock.available.d + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/ModemManager/fcc-unlock.available.d/* $(1)/usr/share/ModemManager/fcc-unlock.available.d + $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/modemmanager.init $(1)/etc/init.d/modemmanager From 9b502e8cb088c2f4f9495a8073d1549ef182e3a5 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Wed, 4 May 2022 14:01:57 +0200 Subject: [PATCH 13/24] modemmanager: report network initiated disconnections to netifd The new connection dispatcher scripts support integrated in ModemManager 1.18.8 allows us to provide a openwrt-specific dispatcher script used to report netifd that the underlying network connection is down. See also https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/775 Fixes https://github.com/openwrt/openwrt/issues/8368 Fixes https://github.com/openwrt/packages/issues/14096 Signed-off-by: Aleksander Morgado (cherry picked from commit bc754f31cfdb004eefa43038f8f0827922107fc6) --- net/modemmanager/Makefile | 3 +++ net/modemmanager/files/10-report-down | 35 +++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100755 net/modemmanager/files/10-report-down diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index 79ebfb6c80..8aa514d8cf 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -110,6 +110,9 @@ define Package/modemmanager/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-shared-*.so* $(1)/usr/lib/ModemManager $(CP) $(PKG_INSTALL_DIR)/usr/lib/ModemManager/libmm-plugin-*.so* $(1)/usr/lib/ModemManager + $(INSTALL_DIR) $(1)/usr/lib/ModemManager/connection.d + $(INSTALL_BIN) ./files/10-report-down $(1)/usr/lib/ModemManager/connection.d + $(INSTALL_DIR) $(1)/etc/dbus-1/system.d $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/dbus-1/system.d/org.freedesktop.ModemManager1.conf $(1)/etc/dbus-1/system.d diff --git a/net/modemmanager/files/10-report-down b/net/modemmanager/files/10-report-down new file mode 100755 index 0000000000..a3e5fb4ba7 --- /dev/null +++ b/net/modemmanager/files/10-report-down @@ -0,0 +1,35 @@ +#!/bin/sh + +# SPDX-License-Identifier: CC0-1.0 +# 2022 Aleksander Morgado +# +# Automatically report to netifd that the underlying modem +# is really disconnected +# +# require program name and at least 4 arguments +[ $# -lt 4 ] && exit 1 + +MODEM_PATH="$1" +BEARER_PATH="$2" +INTERFACE="$3" +STATE="$4" + +[ "${STATE}" = "disconnected" ] || exit 0 + +. /usr/share/ModemManager/modemmanager.common +. /lib/netifd/netifd-proto.sh +INCLUDE_ONLY=1 . /lib/netifd/proto/modemmanager.sh + +MODEM_STATUS=$(mmcli --modem="${MODEM_PATH}" --output-keyvalue) +[ -n "${MODEM_STATUS}" ] || exit 1 + +MODEM_DEVICE=$(modemmanager_get_field "${MODEM_STATUS}" "modem.generic.device") +[ -n "${MODEM_DEVICE}" ] || exit 2 + +CFG=$(mm_get_modem_config "${MODEM_DEVICE}") +[ -n "${CFG}" ] || exit 3 + +logger -t "modemmanager" "interface ${CFG} (network device ${INTERFACE}) ${STATE}" +proto_init_update $INTERFACE 0 +proto_send_update $CFG +exit 0 From a0c8f1028fe0752ddc61a70f7ac8f24a30f37d77 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Mon, 13 Jun 2022 12:24:43 +0200 Subject: [PATCH 14/24] modemmanager: explicitly disconnect even if no bearers found A network restart where netifd is cleanly restarted involves bringing the network interfaces down. The 'modemmanager' protocol handler will run a mmcli --simple-disconnect in this case, but only if there are bearer objects found. If the network restart happened *during* the connection attempt procedure, while the modem is e.g. being registered in the network, no bearer objects exist yet, and so, we would skip doing anything during the interface teardown operation. This would lead to the original connection attempt succeeding, so leaving the modem in ModemManager in connected state, while the associated interface in netifd is reported down. Signed-off-by: Aleksander Morgado (cherry picked from commit c15e94f6c5fbbaedd41fd74b930a2a205f80afc0) --- net/modemmanager/files/modemmanager.proto | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/modemmanager/files/modemmanager.proto b/net/modemmanager/files/modemmanager.proto index d24910b984..855060f06e 100755 --- a/net/modemmanager/files/modemmanager.proto +++ b/net/modemmanager/files/modemmanager.proto @@ -515,7 +515,8 @@ proto_modemmanager_teardown() { modemstatus=$(mmcli --modem="${device}" --output-keyvalue) bearerpath=$(modemmanager_get_field "${modemstatus}" "modem.generic.bearers.value\[1\]") [ -n "${bearerpath}" ] || { - echo "couldn't load bearer path" + echo "couldn't load bearer path: disconnecting anyway" + mmcli --modem="${device}" --simple-disconnect >/dev/null 2>&1 return } From f1a2e5b63dc324456d267f7f511374eca95e9f98 Mon Sep 17 00:00:00 2001 From: Arkadiusz Drabczyk Date: Wed, 13 Jul 2022 14:35:34 +0200 Subject: [PATCH 15/24] modemmanager: fix mm_log() invocations in 25-modemmanager* files Definition of mm_log() was changed in 45a56a889943b437f78fa2bfca3d5d8ac555c77e but 25-modemmanager* weren't changed. Signed-off-by: Arkadiusz Drabczyk (cherry picked from commit cdbc7a67fc17e6472ef9a1344d85f0137e8c2c59) --- net/modemmanager/files/25-modemmanager-net | 4 ++-- net/modemmanager/files/25-modemmanager-tty | 2 +- net/modemmanager/files/25-modemmanager-wwan | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/modemmanager/files/25-modemmanager-net b/net/modemmanager/files/25-modemmanager-net index e87231e31f..ff46420190 100644 --- a/net/modemmanager/files/25-modemmanager-net +++ b/net/modemmanager/files/25-modemmanager-net @@ -12,7 +12,7 @@ mkdir -m 0755 -p "${MODEMMANAGER_RUNDIR}" # Report network interface -mm_log "${ACTION} network interface ${INTERFACE}: event processed" +mm_log "info" "${ACTION} network interface ${INTERFACE}: event processed" mm_report_event "${ACTION}" "${INTERFACE}" "net" "/sys${DEVPATH}" # Look for an associated cdc-wdm interface @@ -26,6 +26,6 @@ esac # Report cdc-wdm device, if any [ -n "${cdcwdm}" ] && { - mm_log "${ACTION} cdc interface ${cdcwdm}: custom event processed" + mm_log "info" "${ACTION} cdc interface ${cdcwdm}: custom event processed" mm_report_event "${ACTION}" "${cdcwdm}" "usbmisc" "/sys${DEVPATH}" } diff --git a/net/modemmanager/files/25-modemmanager-tty b/net/modemmanager/files/25-modemmanager-tty index c13148a33d..5d1042cdd2 100644 --- a/net/modemmanager/files/25-modemmanager-tty +++ b/net/modemmanager/files/25-modemmanager-tty @@ -12,5 +12,5 @@ mkdir -m 0755 -p "${MODEMMANAGER_RUNDIR}" # Report TTY -mm_log "${ACTION} serial interface ${DEVNAME}: event processed" +mm_log "info" "${ACTION} serial interface ${DEVNAME}: event processed" mm_report_event "${ACTION}" "${DEVNAME}" "tty" "/sys${DEVPATH}" diff --git a/net/modemmanager/files/25-modemmanager-wwan b/net/modemmanager/files/25-modemmanager-wwan index c4dc6b897d..b36ade4780 100644 --- a/net/modemmanager/files/25-modemmanager-wwan +++ b/net/modemmanager/files/25-modemmanager-wwan @@ -11,5 +11,5 @@ mkdir -m 0755 -p "${MODEMMANAGER_RUNDIR}" # Report wwan -mm_log "${ACTION} wwan control port ${DEVNAME}: event processed" +mm_log "info" "${ACTION} wwan control port ${DEVNAME}: event processed" mm_report_event "${ACTION}" "${DEVNAME}" "wwan" "/sys${DEVPATH}" From 27a787c4e22b96181b552b8b40fccf3ba18f224c Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Sun, 22 Aug 2021 15:50:14 +1000 Subject: [PATCH 16/24] libmbim: bump to 1.26.0 Signed-off-by: Nicholas Smith (cherry picked from commit 46e6cb7d1521deb4fd0681d5d9ffb597d25da64d) --- libs/libmbim/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/libmbim/Makefile b/libs/libmbim/Makefile index 3d6ffff950..8512756968 100644 --- a/libs/libmbim/Makefile +++ b/libs/libmbim/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmbim -PKG_VERSION:=1.24.8 +PKG_VERSION:=1.26.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libmbim -PKG_HASH:=02590736163fff10e5732191fccc1b9920969616ddc59613a003052a116a3c25 +PKG_HASH:=1e1f0926b22c77210442129eca689722ecf324ab9c9abf421a5c989f46e813cf -PKG_MAINTAINER:=Nicholas Smith +PKG_MAINTAINER:=Nicholas Smith PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 From d66a61da6271ec1df0752ef81c84c027e874755f Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Sun, 22 Aug 2021 16:12:20 +1000 Subject: [PATCH 17/24] libmbim: switch to autorelease Signed-off-by: Nicholas Smith (cherry picked from commit 80b47a11b1c15558f2750aef5663c4f9a2a0744f) --- libs/libmbim/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/libmbim/Makefile b/libs/libmbim/Makefile index 8512756968..32c8ef4935 100644 --- a/libs/libmbim/Makefile +++ b/libs/libmbim/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmbim PKG_VERSION:=1.26.0 -PKG_RELEASE:=1 +PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libmbim From 864793799176b386130be63cf13c11de08a758e9 Mon Sep 17 00:00:00 2001 From: Kuan-Yi Li Date: Fri, 4 Mar 2022 02:44:38 +0800 Subject: [PATCH 18/24] libmbim: bump to 1.26.2 Signed-off-by: Kuan-Yi Li (cherry picked from commit 89d6fc71e0d59fe26540b60d1b9ce22e28bc456d) --- libs/libmbim/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libmbim/Makefile b/libs/libmbim/Makefile index 32c8ef4935..505ae7bc60 100644 --- a/libs/libmbim/Makefile +++ b/libs/libmbim/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmbim -PKG_VERSION:=1.26.0 +PKG_VERSION:=1.26.2 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libmbim -PKG_HASH:=1e1f0926b22c77210442129eca689722ecf324ab9c9abf421a5c989f46e813cf +PKG_HASH:=10c77bf5b5eb8c92ba80e9b519923ad9b898362bc8e1928e2bc9a17eeba649af PKG_MAINTAINER:=Nicholas Smith From c74f6610b0644df2ac8fe99954f0d93b893f9a76 Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Mon, 13 Dec 2021 14:33:19 +0100 Subject: [PATCH 19/24] libmbim: remove unknown configure option The configure option --enable-more-warnings and --without-udev are not recognized by configure. Buildlog: configure: WARNING: unrecognized options: --disable-nls, --enable-more-warnings, --without-udev Therefore this unkown configure options are removed with this commit. Signed-off-by: Florian Eckert (cherry picked from commit f0b5589ef037358ac14a5a2e215233b0683798fa) --- libs/libmbim/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libs/libmbim/Makefile b/libs/libmbim/Makefile index 505ae7bc60..a32f132cee 100644 --- a/libs/libmbim/Makefile +++ b/libs/libmbim/Makefile @@ -28,8 +28,7 @@ CONFIGURE_ARGS += \ --disable-gtk-doc \ --disable-gtk-doc-html \ --disable-gtk-doc-pdf \ - --disable-silent-rules \ - --enable-more-warnings=yes + --disable-silent-rules define Package/libmbim SECTION:=libs @@ -57,7 +56,6 @@ define Package/mbim-utils endef CONFIGURE_ARGS += \ - --without-udev \ --without-udev-base-dir define Build/InstallDev From 224d3d79ea41d19f2671c4596b74a550e21906e0 Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Sun, 22 Aug 2021 16:12:08 +1000 Subject: [PATCH 20/24] libqmi: switch to autorelease Signed-off-by: Nicholas Smith (cherry picked from commit daeb94469b74be7db9c19e2a7a8dab3705e4bd0c) --- libs/libqmi/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/libqmi/Makefile b/libs/libqmi/Makefile index 55920353cd..04ce1e0700 100644 --- a/libs/libqmi/Makefile +++ b/libs/libqmi/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libqmi PKG_VERSION:=1.28.8 -PKG_RELEASE:=1 +PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libqmi From c75ecab4e0bbf103a302cfc6fef4f2f4bcc99912 Mon Sep 17 00:00:00 2001 From: Kuan-Yi Li Date: Mon, 20 Sep 2021 21:52:00 +0800 Subject: [PATCH 21/24] libqmi: bump to 1.30.2 Signed-off-by: Kuan-Yi Li (cherry picked from commit 88895e362b26de502899f49370c198e863810001) --- libs/libqmi/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libqmi/Makefile b/libs/libqmi/Makefile index 04ce1e0700..ee5b697491 100644 --- a/libs/libqmi/Makefile +++ b/libs/libqmi/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libqmi -PKG_VERSION:=1.28.8 +PKG_VERSION:=1.30.2 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libqmi -PKG_HASH:=6e3bbbd200bc1b64b23f6254fef9212f2699ec77cfb32075d2ba5079c73a9f78 +PKG_HASH:=be01ece0ea2c2194cbea5744bf5aaf06c04ba5fb7ec7887a13116c76d114fedd PKG_MAINTAINER:=Nicholas Smith From 463deb8e6d7446fb0e1e77433f461301cc230307 Mon Sep 17 00:00:00 2001 From: Kuan-Yi Li Date: Fri, 4 Mar 2022 02:44:22 +0800 Subject: [PATCH 22/24] libqmi: bump to 1.30.4 Signed-off-by: Kuan-Yi Li (cherry picked from commit 244e1c7cfb97fde264f46224a5127bbd6ac8cb71) --- libs/libqmi/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libqmi/Makefile b/libs/libqmi/Makefile index ee5b697491..d3ebdeecd5 100644 --- a/libs/libqmi/Makefile +++ b/libs/libqmi/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libqmi -PKG_VERSION:=1.30.2 +PKG_VERSION:=1.30.4 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libqmi -PKG_HASH:=be01ece0ea2c2194cbea5744bf5aaf06c04ba5fb7ec7887a13116c76d114fedd +PKG_HASH:=00d7da30a4f8d1185f37cba289cfaf1dfcd04a58f2f76d6acfdf5b85312d6ed6 PKG_MAINTAINER:=Nicholas Smith From 9d32d97c57d548332482f8fca73a9000180f641f Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Mon, 13 Dec 2021 14:11:33 +0100 Subject: [PATCH 23/24] libqmi: remove unknown configure option The configure option --enable-more-warnings is not recognized by configure. Buildlog: configure: WARNING: unrecognized options: --disable-nls, --enable-more-warnings Therefore this configure option is removed with this commit. Signed-off-by: Florian Eckert (cherry picked from commit a42f526b0ced3457ffae919c55229a4a12734e50) --- libs/libqmi/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/libs/libqmi/Makefile b/libs/libqmi/Makefile index d3ebdeecd5..e7ef205e6a 100644 --- a/libs/libqmi/Makefile +++ b/libs/libqmi/Makefile @@ -66,7 +66,6 @@ CONFIGURE_ARGS += \ --disable-gtk-doc-pdf \ --disable-silent-rules \ --enable-firmware-update \ - --enable-more-warnings=yes \ --without-udev \ --without-udev-base-dir From 0cccbcb0c76f2d2fe74fc0acae02c69aee0d8c52 Mon Sep 17 00:00:00 2001 From: Federico Capoano Date: Tue, 18 Oct 2022 19:03:51 -0300 Subject: [PATCH 24/24] libqmi: bump to 1.30.8 Signed-off-by: Federico Capoano --- libs/libqmi/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libqmi/Makefile b/libs/libqmi/Makefile index e7ef205e6a..9843965bcd 100644 --- a/libs/libqmi/Makefile +++ b/libs/libqmi/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libqmi -PKG_VERSION:=1.30.4 +PKG_VERSION:=1.30.8 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.freedesktop.org/software/libqmi -PKG_HASH:=00d7da30a4f8d1185f37cba289cfaf1dfcd04a58f2f76d6acfdf5b85312d6ed6 +PKG_HASH:=862482ce9e3ad0bd65d264334ee311cdb94b9df2863b5b7136309b41b8ac1990 PKG_MAINTAINER:=Nicholas Smith