Modem not resetting.
Paul Bartell
p.bartell at Tempered.io
Tue Apr 28 22:21:42 UTC 2020
On Apr 28, 2020, at 3:54 AM, Paul Gildea <gildeap at tcd.ie<mailto:gildeap at tcd.ie>> wrote:
Hi, I see an issue when resetting modems, both with Telit and Sierra. It happens quite rarely but renders the modem unusable. I tell the modem to go offline and then to reset, most of the time this works, it's a standard thing. Occasionally it will say that it is a success but never actually reload, no matter how many times you issue the commands after this the modem won't reset, and it also can not come back online (invalid transition I assume). Here is the verbose output if that helps in any way, any test you thinkI can run while I have a modem in this state? (Telit LNM960A18)
I’ve run into this before with MDM 9207 modems from Telit and Quectel, but only when the AT&T MBN (carrier profile) is activated. Other carriers profiles did not exhibit this behavior.
I worked around the problem by skipping the “offline" mode step and just sending a dms_set_operating_mode message with QMI_DMS_OPERATING_MODE_RESET. See an implementation here:
https://github.com/temperednetworks/ModemManager/blob/752027d19f77e65b1d4568de49cf2599c49d4e9e/plugins/quectel/mm-broadband-modem-qmi-quectel.c#L198
I’m hesitant to upstream this because I know that some older qualcomm chipsets return InvalidTransition when setting the operating mode to QMI_DMS_OPERATING_MODE_RESET without first setting it to QMI_DMS_OPERATING_MODE_OFFLINE.
qmicli -v -p -d /dev/cdc-wdm3 --dms-get-operating-mode
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] Opening device with flags 'proxy, auto'...
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] loaded driver of cdc-wdm port: qmi_wwan
[28 Apr 2020, 10:43:51] -Warning ** [/dev/cdc-wdm3] requested auto mode but no MBIM QMUX support available
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] created endpoint
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 28
<<<<<< data = 01:1B:00:00:00:00:00:01:00:FF:10:00:01:0D:00:2F:64:65:76:2F:63:64:63:2D:77:64:6D:33
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 27
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 1
<<<<<< tlv_length = 16
<<<<<< message = "Internal Proxy Open" (0xFF00)
<<<<<< TLV:
<<<<<< type = "Device Path" (0x01)
<<<<<< length = 13
<<<<<< value = 2F:64:65:76:2F:63:64:63:2D:77:64:6D:33
<<<<<< translated = /dev/cdc-wdm3
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 19
<<<<<< data = 01:12:00:80:00:00:01:01:00:FF:07:00:02:04:00:00:00:00:00
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 18
<<<<<< flags = 0x80
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 1
<<<<<< tlv_length = 7
<<<<<< message = "Internal Proxy Open" (0xFF00)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
[28 Apr 2020, 10:43:51] [Debug] QMI Device at '/dev/cdc-wdm3' ready
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] Assuming service 'dms' is supported...
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] Allocating new client ID...
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 16
<<<<<< data = 01:0F:00:00:00:00:00:02:22:00:04:00:01:01:00:02
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 15
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 2
<<<<<< tlv_length = 4
<<<<<< message = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<< type = "Service" (0x01)
<<<<<< length = 1
<<<<<< value = 02
<<<<<< translated = dms
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 24
<<<<<< data = 01:17:00:80:00:00:01:02:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 23
<<<<<< flags = 0x80
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 2
<<<<<< tlv_length = 12
<<<<<< message = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
<<<<<< TLV:
<<<<<< type = "Allocation Info" (0x01)
<<<<<< length = 2
<<<<<< value = 02:02
<<<<<< translated = [ service = 'dms' cid = '2' ]
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] Registered 'dms' (version unknown) client with ID '2'
[28 Apr 2020, 10:43:51] [Debug] Asynchronously getting operating mode...
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 13
<<<<<< data = 01:0C:00:00:02:02:00:01:00:2D:00:00:00
[28 Apr 2020, 10:43:51] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 12
<<<<<< flags = 0x00
<<<<<< service = "dms"
<<<<<< client = 2
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 1
<<<<<< tlv_length = 0
<<<<<< message = "Get Operating Mode" (0x002D)
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 24
<<<<<< data = 01:17:00:80:02:02:02:01:00:2D:00:0B:00:02:04:00:00:00:00:00:01:01:00:03
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 23
<<<<<< flags = 0x80
<<<<<< service = "dms"
<<<<<< client = 2
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 1
<<<<<< tlv_length = 11
<<<<<< message = "Get Operating Mode" (0x002D)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
<<<<<< TLV:
<<<<<< type = "Mode" (0x01)
<<<<<< length = 1
<<<<<< value = 03
<<<<<< translated = offline
[/dev/cdc-wdm3] Operating mode retrieved:
Mode: 'offline'
Reason: 'unknown'
HW restricted: 'no'
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] Releasing 'dms' client with flags 'release-cid'...
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] Unregistered 'dms' client with ID '2'
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 17
<<<<<< data = 01:10:00:00:00:00:00:03:23:00:05:00:01:02:00:02:02
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 16
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 3
<<<<<< tlv_length = 5
<<<<<< message = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<< type = "Release Info" (0x01)
<<<<<< length = 2
<<<<<< value = 02:02
<<<<<< translated = [ service = 'dms' cid = '2' ]
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 24
<<<<<< data = 01:17:00:80:00:00:01:03:23:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02
[28 Apr 2020, 10:43:55] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 23
<<<<<< flags = 0x80
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 3
<<<<<< tlv_length = 12
<<<<<< message = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
<<<<<< TLV:
<<<<<< type = "Release Info" (0x01)
<<<<<< length = 2
<<<<<< value = 02:02
<<<<<< translated = [ service = 'dms' cid = '2' ]
[28 Apr 2020, 10:43:55] [Debug] Client released
[28 Apr 2020, 10:43:55] [Debug] Closed
RESET:
qmicli -v -p -d /dev/cdc-wdm3 --dms-set-operating-mode="reset"
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] Opening device with flags 'proxy, auto'...
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] loaded driver of cdc-wdm port: qmi_wwan
[28 Apr 2020, 10:44:09] -Warning ** [/dev/cdc-wdm3] requested auto mode but no MBIM QMUX support available
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] created endpoint
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 28
<<<<<< data = 01:1B:00:00:00:00:00:01:00:FF:10:00:01:0D:00:2F:64:65:76:2F:63:64:63:2D:77:64:6D:33
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 27
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 1
<<<<<< tlv_length = 16
<<<<<< message = "Internal Proxy Open" (0xFF00)
<<<<<< TLV:
<<<<<< type = "Device Path" (0x01)
<<<<<< length = 13
<<<<<< value = 2F:64:65:76:2F:63:64:63:2D:77:64:6D:33
<<<<<< translated = /dev/cdc-wdm3
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 19
<<<<<< data = 01:12:00:80:00:00:01:01:00:FF:07:00:02:04:00:00:00:00:00
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 18
<<<<<< flags = 0x80
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 1
<<<<<< tlv_length = 7
<<<<<< message = "Internal Proxy Open" (0xFF00)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
[28 Apr 2020, 10:44:09] [Debug] QMI Device at '/dev/cdc-wdm3' ready
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] Assuming service 'dms' is supported...
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] Allocating new client ID...
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 16
<<<<<< data = 01:0F:00:00:00:00:00:02:22:00:04:00:01:01:00:02
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 15
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 2
<<<<<< tlv_length = 4
<<<<<< message = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<< type = "Service" (0x01)
<<<<<< length = 1
<<<<<< value = 02
<<<<<< translated = dms
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 24
<<<<<< data = 01:17:00:80:00:00:01:02:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 23
<<<<<< flags = 0x80
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 2
<<<<<< tlv_length = 12
<<<<<< message = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
<<<<<< TLV:
<<<<<< type = "Allocation Info" (0x01)
<<<<<< length = 2
<<<<<< value = 02:02
<<<<<< translated = [ service = 'dms' cid = '2' ]
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] Registered 'dms' (version unknown) client with ID '2'
[28 Apr 2020, 10:44:09] [Debug] Asynchronously setting operating mode...
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 17
<<<<<< data = 01:10:00:00:02:02:00:01:00:2E:00:04:00:01:01:00:04
[28 Apr 2020, 10:44:09] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 16
<<<<<< flags = 0x00
<<<<<< service = "dms"
<<<<<< client = 2
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 1
<<<<<< tlv_length = 4
<<<<<< message = "Set Operating Mode" (0x002E)
<<<<<< TLV:
<<<<<< type = "Mode" (0x01)
<<<<<< length = 1
<<<<<< value = 04
<<<<<< translated = reset
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 20
<<<<<< data = 01:13:00:80:02:02:02:01:00:2E:00:07:00:02:04:00:00:00:00:00
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 19
<<<<<< flags = 0x80
<<<<<< service = "dms"
<<<<<< client = 2
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 1
<<<<<< tlv_length = 7
<<<<<< message = "Set Operating Mode" (0x002E)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
[/dev/cdc-wdm3] Operating mode set successfully
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] Releasing 'dms' client with flags 'release-cid'...
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] Unregistered 'dms' client with ID '2'
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] sent message...
<<<<<< RAW:
<<<<<< length = 17
<<<<<< data = 01:10:00:00:00:00:00:03:23:00:05:00:01:02:00:02:02
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 16
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 3
<<<<<< tlv_length = 5
<<<<<< message = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<< type = "Release Info" (0x01)
<<<<<< length = 2
<<<<<< value = 02:02
<<<<<< translated = [ service = 'dms' cid = '2' ]
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] received message...
<<<<<< RAW:
<<<<<< length = 24
<<<<<< data = 01:17:00:80:00:00:01:03:23:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02
[28 Apr 2020, 10:44:13] [Debug] [/dev/cdc-wdm3] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 23
<<<<<< flags = 0x80
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 3
<<<<<< tlv_length = 12
<<<<<< message = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 00:00:00:00
<<<<<< translated = SUCCESS
<<<<<< TLV:
<<<<<< type = "Release Info" (0x01)
<<<<<< length = 2
<<<<<< value = 02:02
<<<<<< translated = [ service = 'dms' cid = '2' ]
[28 Apr 2020, 10:44:13] [Debug] Client released
[28 Apr 2020, 10:44:13] [Debug] Closed
Regards,
--
Paul
_______________________________________________
libqmi-devel mailing list
libqmi-devel at lists.freedesktop.org<mailto:libqmi-devel at lists.freedesktop.org>
https://lists.freedesktop.org/mailman/listinfo/libqmi-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20200428/5c789999/attachment-0001.htm>
More information about the libqmi-devel
mailing list