aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-03-17 15:13:41 +0100
committerAleksander Morgado <aleksander@aleksander.es>2021-04-14 11:27:27 +0200
commitc35bf6667832f280d939e0442007be4a8b19c207 (patch)
tree14de4b2a7fcebb25f883cd3949ffff99713211d1
parentbf519fcc1b591a1435b727e38ef4a108219bd28b (diff)
port-qmi: net ports using IPA driver expect rmnet based multiplexing
When using the IPA driver we cannot blindly use the master network interface, we must always use RMNET based multiplexing.
-rw-r--r--src/mm-port-qmi.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mm-port-qmi.c b/src/mm-port-qmi.c
index 7a866d27..12a99b29 100644
--- a/src/mm-port-qmi.c
+++ b/src/mm-port-qmi.c
@@ -1009,6 +1009,10 @@ load_current_kernel_data_modes (MMPortQmi *self,
if (g_strcmp0 (self->priv->net_driver, "bam-dmux") == 0)
return MM_PORT_QMI_KERNEL_DATA_MODE_RAW_IP;
+ /* For IPA based setups, always rmnet multiplexing */
+ if (g_strcmp0 (self->priv->net_driver, "ipa") == 0)
+ return MM_PORT_QMI_KERNEL_DATA_MODE_MUX_RMNET;
+
/* For USB based setups, query kernel */
if (g_strcmp0 (self->priv->net_driver, "qmi_wwan") == 0) {
switch (qmi_device_get_expected_data_format (device, NULL)) {
@@ -1041,6 +1045,10 @@ load_supported_kernel_data_modes (MMPortQmi *self,
if (g_strcmp0 (self->priv->net_driver, "bam-dmux") == 0)
return MM_PORT_QMI_KERNEL_DATA_MODE_RAW_IP;
+ /* For IPA based setups, always rmnet multiplexing */
+ if (g_strcmp0 (self->priv->net_driver, "ipa") == 0)
+ return MM_PORT_QMI_KERNEL_DATA_MODE_MUX_RMNET;
+
/* For USB based setups, we may have all supported */
if (g_strcmp0 (self->priv->net_driver, "qmi_wwan") == 0) {
MMPortQmiKernelDataMode supported = MM_PORT_QMI_KERNEL_DATA_MODE_802_3;