Firmware/Image switching guides from Sierra

Bjørn Mork bjorn at mork.no
Thu Jan 19 10:06:35 UTC 2017


Aleksander Morgado <aleksander at aleksander.es> writes:

> Hey,
>
> I just found these today... Quite some good stuff to read and check.
>
> https://source.sierrawireless.com/resources/airprime/software/image-switching-m2m-developers-guide_r2/
>
> https://source.sierrawireless.com/resources/airprime/software/firmware-image-switching-developers-guide_r2/

Thanks.  Yes, that's great stuff.

I really appreciate Sierra making such things public.  It makes them
really, really stand out as exceptionally much better than most of their
competitors, and certainly their chip suppliers, IMO.

If any of you ever use qmi_wwan and libqmi on a non Sierra device (and I
suspect many do), then you should remember to thank Sierra for making
much of that possible. There are many companies supporting open source
projects by e.g. donating hardware, but to be honest, none of that can
ever beat having some documentation.  These projects would not have
existed without docs. Qualcomm has provided lots of good stuff through
their CodeAurora site, but has decided to keep their protocol manuals
for themselves.  The Sierra Wireless contribution is therefore extremely
important, even if they are obviously under an NDA with Qualcomm so they
cannot tell us much about the Qualcomm parts.

> In particular, I'm interested in adding support for the Sierra
> specific SLQSSwiGetAllCarrierImages() and SLQSSwiGetFirmwareCurr()
> messages; would like to see whether these have the same issue with the
> slot index.

I suspect that these are simple wrappers around the same QMI requests,
just taking the images on the host into account as well.

If you can run the GobiNet driver and the SDK, then you should be able
to see all QMI requests if you load the driver with 'debug=1' (which is
a very nice feature - thanks for that!).  That's a simple way to figure
out what the SDK is doing behind the scene.

Sorry the qcqmi wrapper never went anywhere. I'll just have to admit
that I'm not good at writing code. I still think it should be doable in
userspace with a combination of libqmi and cuse.  But I'm just not able
to make it fly.  And with qmi-firmware-update in place, I don't even
have any reason to try anymore.


Bjørn



More information about the libqmi-devel mailing list