SYNC indications

Aleksander Morgado aleksander at lanedo.com
Mon May 7 05:47:00 PDT 2012


>> Does anyone know how to properly process SYNC indications in the CTL
>> service? I tried to reply with a SYNC request for each indication I get,
>> and the device replies with a proper SYNC-response, but it seems it
>> doesn't prevent receiving more of such indications. Any idea what the
>> SYNC indications are for in the first place?
>
> I think I once found that sending SYNC will reset all allocated Client
> IDs.  Which makes it useful if you have lost track of client state and
> want to ensure that it is clean, but not the thing you would want to do
> when receiving a SYNC indication.  Needs verification...
>

Verified.

I temporarily modified qmicli not to perform the CID release before 
exiting, and after 5-6 CID allocations, the UML290 started to complain:

$> sudo qmicli -d /dev/cdc-wdm1 --wds-get-packet-service-status
error: couldn't create WDS client: CID allocation failed in the CTL 
client: CID allocation reply parsing failed: QMI protocol error (5): 
'client-ids-exhausted'
$> sudo qmicli -d /dev/cdc-wdm1 --wds-get-packet-service-status
error: couldn't create WDS client: CID allocation failed in the CTL 
client: CID allocation reply parsing failed: QMI protocol error (5): 
'client-ids-exhausted'
...

If after that I make sure to send a SYNC request as soon as the device 
gets open (with the new --device-open-sync switch in qmicli), the 
problem disappears:
$> sudo qmicli -d /dev/cdc-wdm1 --wds-get-packet-service-status 
--device-open-sync
[/dev/cdc-wdm1] Connection status: 'disconnected'

I would think of always running the SYNC as soon as the QmiDevice gets 
open, but that doesn't work in my internal Gobi2k, which doesn't reply 
to the SYNC at all :-/

Cheers,

-- 
Aleksander


More information about the libqmi-devel mailing list