Merge request !1436 from 'mtk_support'

Rolling: Add modifications related to the rw350-usb project

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1436
This commit is contained in:
Aleksander Morgado
2026-04-22 12:34:56 +02:00
4 changed files with 29 additions and 2 deletions
+1 -1
View File
@@ -383,7 +383,7 @@ plugins_options_reqs = {
'pantech': {'available': true, 'shared': []},
'qcom-soc': {'available': enable_qmi, 'shared': []},
'quectel': {'available': true, 'shared': ['quectel']},
'rolling': {'available': true, 'shared': ['fibocom']},
'rolling': {'available': true, 'shared': ['fibocom', 'mtk']},
'samsung': {'available': true, 'shared': ['icera']},
'sierra-legacy': {'available': true, 'shared': ['icera', 'sierra']},
'sierra': {'available': true, 'shared': ['xmm']},
+1 -1
View File
@@ -905,7 +905,7 @@ if plugins_options['rolling']
test_udev_rules_dir_c_args = ['-DTESTUDEVRULESDIR_ROLLING="@0@"'.format(plugins_dir / 'rolling')]
plugins_test_udev_rules_dir_c_args += test_udev_rules_dir_c_args
incs = plugins_incs + [fibocom_inc]
incs = plugins_incs + [fibocom_inc] + [mtk_inc]
sources = files(
'rolling/mm-plugin-rolling.c',
@@ -81,4 +81,20 @@ ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0115", ENV{.MM_USBIFNUM}=="02", SUBS
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0115", ENV{.MM_USBIFNUM}=="03", SUBSYSTEM=="tty", ENV{ID_MM_PORT_TYPE_QCDM}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0115", ENV{.MM_USBIFNUM}=="04", SUBSYSTEM=="tty", ENV{ID_MM_PORT_TYPE_AT_PRIMARY}="1"
# Rolling RW350-USB (MBIM in iface #0, ADB in iface #5)
# ttyUSB0 (if #2): AP AT port
# ttyUSB1 (if #3): AP LOG port
# ttyUSB2 (if #4): AP META port
# ttyUSB3 (if #6): MD AT port
# ttyUSB4 (if #7): MD META port
# ttyUSB5 (if #8): NPT port
# ttyUSB6 (if #9): DEBUG port
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="02", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="03", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="04", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="06", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="07", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="08", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
ATTRS{idVendor}=="33f8", ATTRS{idProduct}=="0802", ENV{.MM_USBIFNUM}=="09", SUBSYSTEM=="tty", ENV{ID_MM_PORT_IGNORE}="1"
LABEL="mm_rolling_port_types_end"
+11
View File
@@ -28,6 +28,7 @@
#include "mm-broadband-modem-fibocom.h"
#if defined WITH_MBIM
#include "mm-broadband-modem-mbim-fibocom.h"
#include "mm-broadband-modem-mbim-mtk-fibocom.h"
#endif
#if defined WITH_QMI
@@ -53,6 +54,16 @@ create_modem (MMPlugin *self,
{
#if defined WITH_MBIM
if (mm_port_probe_list_has_mbim_port (probes)) {
/* rw350r-usb support with rolling-specific changes */
if (product == 0x0802) {
mm_obj_dbg (self, "MBIM-powered MTK-based Rolling modem found...");
return MM_BASE_MODEM (mm_broadband_modem_mbim_mtk_fibocom_new (uid,
physdev,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
/* For the MBIM-based modem we fully rely on the Fibocom implementation */
mm_obj_dbg (self, "MBIM-powered Rolling modem found...");
return MM_BASE_MODEM (mm_broadband_modem_mbim_fibocom_new (uid,