[PATCH 0/2] MBIM: Report 3GPP cause codes on errors
Bjørn Mork
bjorn at mork.no
Thu Dec 19 05:22:23 PST 2013
BTW, seems I'm able to reproduce this error quite consitently, so I can
verify it on QMI using a Huawei E392 modem. The libqmi debugging is a
tad better so at least you get the 3gpp cause parsed and presented in
the debug log:
ModemManager[8088]: [/dev/cdc-wdm1] Received message (translated)...
>>>>>> QMUX:
>>>>>> length = 31
>>>>>> flags = 0x80
>>>>>> service = "wds"
>>>>>> client = 1
>>>>>> QMI:
>>>>>> flags = "response"
>>>>>> transaction = 2
>>>>>> tlv_length = 19
>>>>>> message = "Start Network" (0x0020)
>>>>>> TLV:
>>>>>> type = "Result" (0x02)
>>>>>> length = 4
>>>>>> value = 01:00:0E:00
>>>>>> translated = FAILURE: CallFailed
>>>>>> TLV:
>>>>>> type = "Call End Reason" (0x10)
>>>>>> length = 2
>>>>>> value = F6:03
>>>>>> translated = gsm-wcdma-unknown-pdp
>>>>>> TLV:
>>>>>> type = "Verbose Call End Reason" (0x11)
>>>>>> length = 4
>>>>>> value = 06:00:1C:00
>>>>>> translated = [ type = '3gpp' reason = '28' ]
ModemManager[8088]: <info> [1387458899.586299] [mm-bearer-qmi.c:161] start_network_ready(): error: couldn't start network: QMI protocol error (14): 'CallFailed'
ModemManager[8088]: <info> [1387458899.586366] [mm-bearer-qmi.c:175] start_network_ready(): call end reason (1014): 'gsm-wcdma-unknown-pdp'
ModemManager[8088]: <info> [1387458899.586426] [mm-bearer-qmi.c:186] start_network_ready(): verbose call end reason (6,28): [3gpp] unknown-pdp
ModemManager[8088]: <debug> [1387458899.586534] [mm-bearer.c:466] connect_ready(): Couldn't connect bearer '/org/freedesktop/ModemManager1/Bearer/3': 'QMI protocol error (14): 'CallFailed''
ModemManager[8088]: <info> [1387458899.586647] [mm-iface-modem.c:1371] __iface_modem_update_state_internal(): Modem /org/freedesktop/ModemManager1/Modem/1: state changed (connecting -> registered)
ModemManager[8088]: <debug> [1387458899.587641] [mm-iface-modem-simple.c:221] connect_bearer_ready(): Couldn't connect bearer: 'QMI protocol error (14): 'CallFailed''
ModemManager[8088]: <debug> [1387458927.042732] [mm-broadband-modem-qmi.c:2458] load_signal_quality(): loading signal quality...
And of course mmcli reports the same bearer error:
error: couldn't connect the modem: 'GDBus.Error:org.freedesktop.libqmi.Error.Protocol.CallFailed: QMI protocol error (14): 'CallFailed''
But I guess the generic QMI 'CallFailed' status is wrong here as well?
We should probably log and return the '3gpp' cause code instead, if TLV
0x11 is present and the type is '3gpp'.
Bjørn
More information about the ModemManager-devel
mailing list