[Debian-on-mobile-maintainers] Bug#1004447: modemmanager: Sierra Wireless EM7455 stops working after upgrade to 1.18.4-1 (stays in FCC lock)

Bjoern Buerger bbu at penguin.de
Thu Jan 27 20:09:41 GMT 2022


Package: modemmanager
Version: 1.18.4-1
Severity: normal

Hi,

after upgrading to the latest unstable version of modemmanager to 1.18.4-1, the
Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A in my Lenovo Thinkpad T470
stopped working.

I have a rough idea, what's going on, but not enough insight into mm
to actually fix it properly (see below)

What I see as user:

After booting or resume from suspend, the modem seems to get available
after a few seconds and network-manager tries to start my usual connection.
This fails immediately and the only visible thing is a flashing Dock-Icon
of network-manager.

At the same time, the system journal is flooded with this type
of messages in high frequency:

22:04:52 NetworkManager[1133]: <info>  [1643231092.2962] modem["cdc-wdm1"]: modem state changed, 'disabled' --> 'enabling' (reason: user-requested)
22:04:52 ModemManager[1180]: <info>  [modem0] state changed (enabling -> disabled)
22:04:52 NetworkManager[1133]: <info>  [1643231092.2968] modem["cdc-wdm1"]: modem state changed, 'enabling' --> 'disabled' (reason: unknown)
22:04:52 NetworkManager[1133]: <info>  [1643231092.2969] device (cdc-wdm1): state change: prepare -> disconnected (reason 'user-requested', sys-iface-state: 'managed')
22:04:52 NetworkManager[1133]: <info>  [1643231092.2980] policy: auto-activating connection 'T-Mobile IPv6 only' (...)
22:04:52 NetworkManager[1133]: <info>  [1643231092.2985] device (cdc-wdm1): Activation: starting connection '...)
22:04:52 NetworkManager[1133]: <info>  [1643231092.2986] device (cdc-wdm1): state change: disconnected -> prepare naged')
22:04:52 ModemManager[1180]: <info>  [modem0] simple connect started...
22:04:52 ModemManager[1180]: <info>  [modem0] simple connect state (3/8): enable
22:04:52 ModemManager[1180]: <info>  [modem0] state changed (disabled -> enabling)
22:04:52 ModemManager[1180]: <warn>  [modem0] MBIM protocol error: NotOpened
22:04:52 ModemManager[1180]: <warn>  [modem0] MBIM protocol error: NotOpened
22:04:52 ModemManager[1180]: <warn>  [modem0] couldn't enable interface: 'Invalid transition'

mmcli lists the modem as:

  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/0
  -----------------------------
  Hardware |      manufacturer: Sierra Wireless, Incorporated
           |             model: Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A
           | firmware revision: SWI9X30C_02.20.03.00
           |    carrier config: default
           |      h/w revision: EM7455
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
  -----------------------------
  System   |            device: /sys/devices/pci0000:00/0000:00:14.0/usb1/1-6
           |           drivers: cdc_mbim
           |            plugin: sierra
           |      primary port: cdc-wdm1
           |             ports: cdc-wdm1 (mbim), wwan0 (net)
  -----------------------------
  Status   |    unlock retries: sim-pin2 (3)
           |             state: disabled
           |       power state: low
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 3g; preferred: none
           |                    allowed: 4g; preferred: none
           |                    allowed: 3g, 4g; preferred: 4g
           |                    allowed: 3g, 4g; preferred: 3g
           |           current: allowed: 3g, 4g; preferred: 4g
  -----------------------------
  Bands    |         supported: utran-1, utran-3, utran-4, utran-5, utran-8, utran-2, 
           |                    eutran-1, eutran-2, eutran-3, eutran-4, eutran-5, eutran-7, eutran-8, 
           |                    eutran-12, eutran-13, eutran-20, eutran-25, eutran-26, eutran-41
           |           current: utran-1, utran-3, utran-4, utran-5, utran-8, utran-2, 
           |                    eutran-1, eutran-2, eutran-3, eutran-4, eutran-5, eutran-7, eutran-8, 
           |                    eutran-12, eutran-13, eutran-20, eutran-25, eutran-26, eutran-41
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6
  -----------------------------
  3GPP     |              imei: xxxxxxxxxxxxxxxxxxxxxxxxx
           |     enabled locks: fixed-dialing
  -----------------------------
  SIM      |         dbus path: /org/freedesktop/ModemManager1/SIM/0


Things I tried so far:

* Downgrading to 1.14.12-0.2 doesn't help, the modem will not be detected at all.

* Booting with mm 1.18.4-1 installed, then *downgrading* modemmanager, waiting for
  roughly 10 seconds and *upgrading* again (without rebooting), will make the modem
  available until shutdown/suspend. After next resume, the modem is inaccessible again.

* After poking arund for some time, I found this:

  root at spiff:~# qmicli --device-open-proxy --device=/dev/cdc-wdm1 --dms-set-fcc-authentication
  [/dev/cdc-wdm1] Successfully set FCC authentication

  Does immediately solve the problem until shutdown/reboot. However, I am unsure, which
  component is the root cause: The Linux Kernel, mbim-proxy, qmi-proxy, modemmanager?

What I know:

* The mbim-proxy process is regularly startet. Even, if I stop it manually, it will
  be restarted immediately (probably triggered by network-manager/modemmanger). But
  this doesn't solve the problem.

What I suspect:

* The modem needs some time for initialization after reboot or resume.
  Maybe the timing has changed slightly and modemmanager tries to
  lift the fcc lock a little bit too early?

I hope, somebody can point me in the right direction

Thanks in advance :-)
Bjørn



-- System Information:
Debian Release: bookworm/sid
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-10-amd64 (SMP w/4 CPU threads)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages modemmanager depends on:
ii  libc6                  2.33-5
ii  libglib2.0-0           2.70.3-1
ii  libgudev-1.0-0         237-2
ii  libmbim-glib4          1.26.2-1
ii  libmbim-proxy          1.26.2-1
ii  libmm-glib0            1.18.4-1
ii  libpolkit-gobject-1-0  0.105-31.1+b1
ii  libqmi-glib5           1.30.2-1
ii  libqmi-proxy           1.30.2-1
ii  libsystemd0            250.3-2
ii  policykit-1            0.105-31.1+b1

Versions of packages modemmanager recommends:
ii  usb-modeswitch  2.6.1-3

modemmanager suggests no packages.

-- no debconf information


More information about the Debian-on-mobile-maintainers mailing list