<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hi List, <br>
</p>
<p>I have a very weird problem with the SIMCom 7600E-H. In approx.
70% of all bootups, some wda/wds commands that apparently talk
with the card always fail the first time (and possibly subsequent
times) they are run. E.g. if I do:</p>
<p>platform ~ # ip link set dev wwp0s20u5u1i5 down<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0 --wda-get-data-format<br>
error: couldn't create client for the 'wda' service: CID
allocation failed in the CTL client: Transaction timed out<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0 --wda-get-data-format<br>
error: couldn't create client for the 'wda' service: QMI protocol
error (3): 'Internal'<br>
</p>
<p>As you see, subsequent calls then also fail. <br>
</p>
<p>However, if the first command is e.g.
wds-get-autoconnect-settings or wds-reset or others, then
subsequent wda/wds commands always work:</p>
<p>platform ~ # ip link set dev wwp0s20u5u1i5 down<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0
--wds-get-autoconnect-settings # should print disabled, but fails
~70% of the time<br>
error: couldn't create client for the 'wds' service: CID
allocation failed in the CTL client: Transaction timed out<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0 --get-expected-data-format<br>
802-3<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0
--set-expected-data-format=raw-ip<br>
[/dev/cdc-wdm0] expected data format set to: raw-ip<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0 --wda-get-data-format<br>
[/dev/cdc-wdm0] Successfully got data format<br>
QoS flow header: no<br>
Link layer protocol: 'raw-ip'<br>
Uplink data aggregation protocol: 'disabled'<br>
Downlink data aggregation protocol: 'disabled'<br>
NDP signature: '0'<br>
Uplink data aggregation max size: '0'<br>
Downlink data aggregation max size: '0'<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0
--wda-set-data-format=raw-ip<br>
[/dev/cdc-wdm0] Successfully set data format<br>
QoS flow header: no<br>
Link layer protocol: 'raw-ip'<br>
Uplink data aggregation protocol: 'disabled'<br>
Downlink data aggregation protocol: 'disabled'<br>
NDP signature: '0'<br>
Downlink data aggregation max datagrams: '0'<br>
Downlink data aggregation max size: '0'<br>
<br>
One quick and dirty fix is to run an "empty" wds command first
(which then fails or works - does not matter), as subsequent
wds/wda commands do never seem to fail then: <br>
</p>
<p>platform ~ # ip link set dev wwp0s20u5u1i5 down<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0 --wds-noop<br>
error: couldn't create client for the 'wds' service: CID
allocation failed in the CTL client: Transaction timed out<br>
platform ~ # qmicli -p -d /dev/cdc-wdm0
--wds-get-autoconnect-settings # should print disabled<br>
Autoconnect settings retrieved:<br>
Status: 'disabled'<br>
.... working, as above ....<br>
</p>
<p>Of course, this also makes qmi-network to fail at ~70% of the
invocations. The fix above could work fine, but I think it would
be best to know the actual reason for the problem and have a
proper solution that could be trusted in the longer run. And save
10 secs during boot :)<br>
</p>
<p>The system is Gentoo, 32-bit, kernel 4.9.221. Tested with both
newest SIMCom FW and the FW before that, and with two modems.
Settings for the cards reset to factury without any change. Also
tested with libqmi-1.22.2 and the newest master. Does not happen
on Sierra Wireless MC7304. No dhcpc client is active. Autoconnect
is disabled:<br>
</p>
<p>platform ~ # qmicli -p -d /dev/cdc-wdm0
--wds-get-autoconnect-settings<br>
Autoconnect settings retrieved:<br>
Status: 'disabled'<br>
</p>
<p>Any clues? Am wondering if I have hit a bug, or if I just am
plain stupid and am not getting something.... Been trying to
figure out this for some days now. Any help appreciated.<br>
</p>
<div class="moz-signature">BR, <br>
</div>
<div class="moz-signature">Tor Rune Skoglund</div>
<div class="moz-signature"><b><br>
</b></div>
</body>
</html>