Matti Laakso <malaa...@elisanet.fi> writes:

> I wanted to get an LTE dongle which uses the QMI protocol working in my
> router, but didn't have enough space for libqmi. Luckily, Felix had
> developed uqmi [1], which turned out to work nicely. I made a protocol
> script for netifd, and some other changes, which you see below.
>
> Now my questions:
>
> - Is there a reason why uqmi has not been packaged yet?
>
> - Is the QMI protocol documentation available somewhere (except the JSON
> files at [1])?

Lots of it is available for download from Qualcomm, but unfortunately
with usage restrictions which pretty much makes it impossible to use for
open source software.  If you don't care about that, then see
https://developer.qualcomm.com/mobile-development/maximize-hardware/3g4g-connectivity-gobi/3g-4g-connectivity-gobi-tools-and-resources

If you are an open source developer, then it's probably best *not* to
look there...

But Qualcomm has opened up some of it in their CodeAurora Gobi project,
in the form of source code:
https://www.codeaurora.org/projects/all-active-projects/gobi-project

This is where we got the info used in libqmi and other open source QMI
projects.

> I'm particularly confused about when to get, set, keep,
> and release client ID's. My dongle doesn't seem to require a client ID
> except for starting and stopping the connection. Is this different for
> other dongles?

You'll generally need a subsystem client ID for all commands.  The only
exception is for the QMI_CTL system, which includes the get/release
client ID commands and other generic management stuff.

All devices I've encountered will release all resources allocated by a
client when the client ID is released.  For the QMI_WDS system that
means that any activated session will be taken down.  So you usually
need to
 - allocate a QMI_WDS client ID
 - connect
 - keep the client for as long as your session lasts
 - (optionally disconnect)
 - release  QMI_WDS client

This becomes particularily interesting for dual-stack (IPV4V6)
connections, where you have to use two QMI_WDS client IDs: one for the
IPv4 "session" and one for the IPv6 "session".
 



Bjørn
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to