ModemManager and sleep

Angelo Corsaro corsaroangelo at gmail.com
Sat Dec 7 16:29:33 UTC 2019


Hi list,
I'm using Ubuntu 18.04.3 lts on a Lenovo Thinkpad X1 carbon i7-6600 with 
modem LTE Sierra 
ID_MODEL=Sierra_Wireless_EM7455_Qualcomm_Snapdragon_X7_LTE-A.
When the laptop is power up I can use the modem, but when the laptop 
went to sleep and after I resume it, the modem disappear.
Now the laptop is resumed and the modem is not available to ModemManager 
'cause this error:

root at angelo-thinkpad-x1-carbon-4th:~# systemctl status ModemManager
● ModemManager.service - Modem Manager
    Loaded: loaded (/lib/systemd/system/ModemManager.service; enabled; 
vendor preset: enabled)
    Active: inactive (dead) since Sat 2019-12-07 16:52:35 CET; 30min ago
   Process: 13379 ExecStart=/usr/sbin/ModemManager 
--filter-policy=strict (code=exited, status=0/SUCCESS)
  Main PID: 13379 (code=exited, status=0/SUCCESS)

dic 07 16:52:35 angelo-thinkpad-x1-carbon-4th systemd[1]: Starting Modem 
Manager...
dic 07 16:52:35 angelo-thinkpad-x1-carbon-4th ModemManager[13379]: 
<info>  ModemManager (version 1.10.0) starting in system bus...
dic 07 16:52:35 angelo-thinkpad-x1-carbon-4th ModemManager[13379]: 
<warn>  Could not acquire the 'org.freedesktop.ModemManager1' service name
dic 07 16:52:35 angelo-thinkpad-x1-carbon-4th ModemManager[13379]: 
<info>  ModemManager is shut down
dic 07 16:52:35 angelo-thinkpad-x1-carbon-4th systemd[1]: Started Modem 
Manager.

I looked at the archive, but I have found no one solution acceptable for me.

Issuing lsusb I can found the modem:

root at angelo-thinkpad-x1-carbon-4th:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 138a:0090 Validity Sensors, Inc.
Bus 001 Device 004: ID 04f2:b5c1 Chicony Electronics Co., Ltd
Bus 001 Device 003: ID 8087:0a2b Intel Corp.
*B**us 001 Device 017: ID 1199:9079 Sierra Wireless, Inc. *
Bus 001 Device 018: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial 
adapter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

and the file in /etc/udev/rules.d

root at angelo-thinkpad-x1-carbon-4th:~# more 
/etc/udev/rules.d/99-sierra.rules
ACTION!="add|change", GOTO="mbim_to_qmi_rules_end"
SUBSYSTEM!="usb|drivers", GOTO="mbim_to_qmi_rules_end"

# load qmi_wwan module
SUBSYSTEM=="usb", \
ATTR{idVendor}=="1199", ATTR{idProduct}=="9079", \
RUN+="/sbin/modprobe -b qmi_wwan"

# force Dell WWAN 5809e to configuration #1
SUBSYSTEM=="usb", \
ATTR{idVendor}=="1199", ATTR{idProduct}=="9079", \
ATTR{bConfigurationValue}="1"

# add the new id in the qmi_wwan driver
SUBSYSTEM=="drivers", \
ENV{DEVPATH}=="/bus/usb/drivers/qmi_wwan", \
ATTR{new_id}="1199 9079"

# load qcserial module
SUBSYSTEM=="usb", \
ATTR{idVendor}=="1199", ATTR{idProduct}=="9079", \
RUN+="/sbin/modprobe -b qcserial"

# add the new id in the qcserial driver
SUBSYSTEM=="drivers", \
ENV{DEVPATH}=="/bus/usb-serial/drivers/qcserial", \
ATTR{new_id}="1199 9079"

LABEL="mbim_to_qmi_rules_end"

also
root at angelo-thinkpad-x1-carbon-4th:~# udevadm info --attribute 
/sys/class/net/wwp0s20f0u2i12

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

   looking at device 
'/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.12/net/wwp0s20f0u2i12':
     KERNEL=="wwp0s20f0u2i12"
     SUBSYSTEM=="net"
     DRIVER==""
     ATTR{addr_assign_type}=="3"
     ATTR{addr_len}=="6"
     ATTR{address}=="e2:ab:3e:a9:14:02"
     ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
     ATTR{carrier_changes}=="0"
     ATTR{carrier_down_count}=="0"
     ATTR{carrier_up_count}=="0"
     ATTR{dev_id}=="0x0"
     ATTR{dev_port}=="0"
     ATTR{flags}=="0x1002"
     ATTR{gro_flush_timeout}=="0"
     ATTR{ifalias}==""
     ATTR{ifindex}=="28"
     ATTR{iflink}=="28"
     ATTR{link_mode}=="0"
     ATTR{mtu}=="1500"
     ATTR{name_assign_type}=="4"
     ATTR{netdev_group}=="0"
     ATTR{operstate}=="down"
     ATTR{proto_down}=="0"
     ATTR{tx_queue_len}=="1000"
     ATTR{type}=="1"

   looking at parent device 
'/devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.12':
     KERNELS=="1-2:1.12"
     SUBSYSTEMS=="usb"
     DRIVERS=="qmi_wwan"
     ATTRS{authorized}=="1"
     ATTRS{bAlternateSetting}==" 0"
     ATTRS{bInterfaceClass}=="02"
     ATTRS{bInterfaceNumber}=="0c"
     ATTRS{bInterfaceProtocol}=="00"
     ATTRS{bInterfaceSubClass}=="0e"
     ATTRS{bNumEndpoints}=="01"
     ATTRS{iad_bFirstInterface}=="0c"
     ATTRS{iad_bFunctionClass}=="02"
     ATTRS{iad_bFunctionProtocol}=="00"
     ATTRS{iad_bFunctionSubClass}=="0e"
     ATTRS{iad_bInterfaceCount}=="02"
     ATTRS{supports_autosuspend}=="1"

   looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-2':
     KERNELS=="1-2"
     SUBSYSTEMS=="usb"
     DRIVERS=="usb"
     ATTRS{authorized}=="1"
     ATTRS{avoid_reset_quirk}=="0"
     ATTRS{bConfigurationValue}=="1"
     ATTRS{bDeviceClass}=="00"
     ATTRS{bDeviceProtocol}=="00"
     ATTRS{bDeviceSubClass}=="00"
     ATTRS{bMaxPacketSize0}=="64"
     ATTRS{bMaxPower}=="500mA"
     ATTRS{bNumConfigurations}=="1"
     ATTRS{bNumInterfaces}==" 2"
     ATTRS{bcdDevice}=="0006"
     ATTRS{bmAttributes}=="a0"
     ATTRS{busnum}=="1"
     ATTRS{configuration}==""
     ATTRS{devnum}=="17"
     ATTRS{devpath}=="2"
     ATTRS{idProduct}=="9079"
     ATTRS{idVendor}=="1199"
     ATTRS{ltm_capable}=="no"
     ATTRS{manufacturer}=="Sierra Wireless, Incorporated"
     ATTRS{maxchild}=="0"
     ATTRS{product}=="Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A"
     ATTRS{quirks}=="0x0"
     ATTRS{removable}=="fixed"
     ATTRS{rx_lanes}=="1"
     ATTRS{serial}=="LF71223242011020"
     ATTRS{speed}=="480"
     ATTRS{tx_lanes}=="1"
     ATTRS{urbnum}=="82"
     ATTRS{version}==" 2.10"

   looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1':
     KERNELS=="usb1"
     SUBSYSTEMS=="usb"
     DRIVERS=="usb"
     ATTRS{authorized}=="1"
     ATTRS{authorized_default}=="1"
     ATTRS{avoid_reset_quirk}=="0"
     ATTRS{bConfigurationValue}=="1"
     ATTRS{bDeviceClass}=="09"
     ATTRS{bDeviceProtocol}=="01"
     ATTRS{bDeviceSubClass}=="00"
     ATTRS{bMaxPacketSize0}=="64"
     ATTRS{bMaxPower}=="0mA"
     ATTRS{bNumConfigurations}=="1"
     ATTRS{bNumInterfaces}==" 1"
     ATTRS{bcdDevice}=="0500"
     ATTRS{bmAttributes}=="e0"
     ATTRS{busnum}=="1"
     ATTRS{configuration}==""
     ATTRS{devnum}=="1"
     ATTRS{devpath}=="0"
     ATTRS{idProduct}=="0002"
     ATTRS{idVendor}=="1d6b"
     ATTRS{interface_authorized_default}=="1"
     ATTRS{ltm_capable}=="no"
     ATTRS{manufacturer}=="Linux 5.0.0-37-generic xhci-hcd"
     ATTRS{maxchild}=="12"
     ATTRS{product}=="xHCI Host Controller"
     ATTRS{quirks}=="0x0"
     ATTRS{removable}=="unknown"
     ATTRS{rx_lanes}=="1"
     ATTRS{serial}=="0000:00:14.0"
     ATTRS{speed}=="480"
     ATTRS{tx_lanes}=="1"
     ATTRS{urbnum}=="6043"
     ATTRS{version}==" 2.00"

   looking at parent device '/devices/pci0000:00/0000:00:14.0':
     KERNELS=="0000:00:14.0"
     SUBSYSTEMS=="pci"
     DRIVERS=="xhci_hcd"
     ATTRS{ari_enabled}=="0"
     ATTRS{broken_parity_status}=="0"
     ATTRS{class}=="0x0c0330"
     ATTRS{consistent_dma_mask_bits}=="64"
     ATTRS{d3cold_allowed}=="1"
     ATTRS{dbc}=="disabled"
     ATTRS{device}=="0x9d2f"
     ATTRS{dma_mask_bits}=="64"
     ATTRS{driver_override}=="(null)"
     ATTRS{enable}=="1"
     ATTRS{irq}=="122"
     ATTRS{local_cpulist}=="0-3"
     ATTRS{local_cpus}=="f"
     ATTRS{msi_bus}=="1"
     ATTRS{numa_node}=="-1"
     ATTRS{revision}=="0x21"
     ATTRS{subsystem_device}=="0x2238"
     ATTRS{subsystem_vendor}=="0x17aa"
     ATTRS{vendor}=="0x8086"

   looking at parent device '/devices/pci0000:00':
     KERNELS=="pci0000:00"
     SUBSYSTEMS==""
     DRIVERS==""



thanks,
Angelo

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/modemmanager-devel/attachments/20191207/223f43ae/attachment.html>


More information about the ModemManager-devel mailing list