In the past few months a lot of development happened recently in ModemManager, both new features and bugfixings. As usual I will mainly focus on the changes that affect Telit plugin, but I suggest to take a look log at the whole git log since there is a lot more.
Telit plugin new features
A short list of new features:
- Telit RS232 modem supports, mandatory if you cannot use USB in your system
- Telit udev tag dependency removal (first and second commit)
- Telit Support QMI and MBIM modems (previously those were taken by the generic plugin)
Telit plugin bugfixing
- CSIM related bugfixing (e.g. avoid the TTY lockup due to CSIM operations for specific modem/firmware combo, allow CSIM requests even for those modems that do not support CSIM lock)
- QSS notification improvements (starting from this commit)
- helpers: extend +WS46=? response parser to support ranges (being in the core, this is not strictly related to Telit plugin, but it is needed to allow proper identification of access technology in Telit LTE modems)
- telit: fix #PSNT values interpretation for HSDPA and LTE modems
Many thanks to Aleksander Morgado and Carlo Lobrano for these!
Concurrent multiple data connections with a single rmnet
Another interesting feature landed recently to the Linux kernel and ModemManager, is related to Qualcomm modems that present a single rmnet device in the USB composition.
I’m experiencing a lot of requests for concurrent data connections due to carrier requirements: mbim based devices are already capable of doing so, since this kind of feature is codified in the standard and implemented in Linux kernel driver (see this Bjorn Mork’s interesting post), while in the past QC modems for this feature relied on distinguished rmnet devices at the usb level.
Current QC chipsets support the multiplexing of an rmnet device, in order to fulfill the requirement: thanks mainly to Bjorn Mork there is now support for this (data part) in Linux qmi_wwan driver, see:
- net: usb: qmi_wwan: add qmap mux protocol support
- Documentation: ABI: testing: sysfs-class-net-qmi: add new qmap mux files description
On the user-space side Carlo Lobrano implemented the needed QMI requests:
By the way, it seems that Qualcomm is doing an effort to improve its Linux support for this kind of devices, by submitting patches to the kernel (see drivers: net: Add support for rmnet driver).