aboutsummaryrefslogtreecommitdiff
path: root/src/mm-bearer-qmi.c
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-07-28 23:55:04 +0200
committerAleksander Morgado <aleksander@aleksander.es>2021-08-09 12:22:26 +0000
commitc49f3f5f46e6f1a27108e9826c32af776ec111f9 (patch)
treefac8384b654e97c565228ed9d0d148afc26e3bab /src/mm-bearer-qmi.c
parent062851423945126bb3b419571bbcf8996b086cde (diff)
bearer-qmi: don't enable multiplexing by default unless in IPA
The next 1.18 release will have multiplexing support, but not enabled by default, to avoid breaking setups that don't expect the new virtual net interfaces for the multiplexed sessions. The exception is Qualcomm SoCs using the IPA driver, where multiplexing is fully required.
Diffstat (limited to 'src/mm-bearer-qmi.c')
-rw-r--r--src/mm-bearer-qmi.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/mm-bearer-qmi.c b/src/mm-bearer-qmi.c
index 86959765..f02cbf17 100644
--- a/src/mm-bearer-qmi.c
+++ b/src/mm-bearer-qmi.c
@@ -2140,11 +2140,18 @@ load_settings_from_bearer (MMBearerQmi *self,
MMBearerAllowedAuth bearer_auth;
GError *inner_error = NULL;
const gchar *str;
+ const gchar *data_port_driver;
- /* If no multiplex setting given by the user, assume requested */
+ data_port_driver = mm_kernel_device_get_driver (mm_port_peek_kernel_device (ctx->data));
+
+ /* If no multiplex setting given by the user, assume none; unless in IPA */
ctx->multiplex = mm_bearer_properties_get_multiplex (properties);
- if (ctx->multiplex == MM_BEARER_MULTIPLEX_SUPPORT_UNKNOWN)
- ctx->multiplex = MM_BEARER_MULTIPLEX_SUPPORT_REQUESTED;
+ if (ctx->multiplex == MM_BEARER_MULTIPLEX_SUPPORT_UNKNOWN) {
+ if (!g_strcmp0 (data_port_driver, "ipa"))
+ ctx->multiplex = MM_BEARER_MULTIPLEX_SUPPORT_REQUIRED;
+ else
+ ctx->multiplex = MM_BEARER_MULTIPLEX_SUPPORT_NONE;
+ }
/* The link prefix hint given must be modem-specific */
if (ctx->multiplex == MM_BEARER_MULTIPLEX_SUPPORT_REQUESTED ||