Linux QMAP kernel, libqmi and ModemManager updates

A lot of Linux QMAP related development happened in the past few weeks, touching the kernel, libqmi and ModemManager.

Linux QMAP

Linux QMAP kernel updates

The most important update is that rmnet support has been added to qmi_wwan with commit net: qmi_wwan: Add pass through mode

The commit introduced a new sysfs file that allows forwarding QMAP packets to the stack, in order to make use of the rmnet module for demultiplexing.

The legacy Linux QMAP mode in qmi_wwan has seen also fixes net: usb: qmi_wwan: add qmap id sysfs file for qmimux interfaces, useful to provide a method for userspace to associate QMI control channels and network interfaces, and net: usb: qmi_wwan: allow qmimux add/del with master up, for removing the need to have the network interface down when adding/deleting a QMAP interface.

libqmi and ModemManager updates

However, most of the development happened on libqmi and ModemManger now both capable of setting-up multiple PDN connections through the network interfaces exposed by rmnet or qmi_wwan.

The main merge request for libqmi is Link management support with qmi_wwan in which there are explained the new methods that should be used for managing the network interfaces through libqmi. This feature is available since version 1.28.0

The procedure described in article Linux QMAP qmi_wwan multiple PDN setup is still valid, but it can be simplified using the new functions exposed by libqmi.

As for ModemManager, the most important merge request is QMAP data aggregation support in QMI modems: besides allowing to setup multiple simultaneous PDNs, this MR is also mandatory for getting the most out of high-cat modems in terms of throughput, since it enables also the download packets aggregation.

Currently the changes are available in master, but should be inside the next ModeManager official release.

I would like to thank all the people involved in this and, especially, Aleksander Morgado, libqmi and ModemManager maintainer.