[PATCH 1/4] ublox: allow creating u-blox bearers if MM_UBLOX_USB_PROFILE_UNKNOWN

Aleksander Morgado aleksander at aleksander.es
Thu Sep 7 12:16:41 UTC 2017


The TOBY-L4 doesn't support querying the current USB profile in use
via the AT+UUSBCONF command, so the loaded profile will always be set
as MM_UBLOX_USB_PROFILE_UNKNOWN.

In this case, we will anyway allow creating a u-blox specific bearer,
as long as a network interface has also been found in the modem.
---
 plugins/ublox/mm-broadband-bearer-ublox.c | 1 -
 plugins/ublox/mm-broadband-modem-ublox.c  | 5 ++---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/plugins/ublox/mm-broadband-bearer-ublox.c b/plugins/ublox/mm-broadband-bearer-ublox.c
index 11911b25..647a83ff 100644
--- a/plugins/ublox/mm-broadband-bearer-ublox.c
+++ b/plugins/ublox/mm-broadband-bearer-ublox.c
@@ -707,7 +707,6 @@ mm_broadband_bearer_ublox_new (MMBroadbandModem      *modem,
                                GAsyncReadyCallback    callback,
                                gpointer               user_data)
 {
-    g_assert (profile == MM_UBLOX_USB_PROFILE_ECM || profile == MM_UBLOX_USB_PROFILE_RNDIS);
     g_assert (mode == MM_UBLOX_NETWORKING_MODE_ROUTER || mode == MM_UBLOX_NETWORKING_MODE_BRIDGE);
 
     g_async_initable_new_async (
diff --git a/plugins/ublox/mm-broadband-modem-ublox.c b/plugins/ublox/mm-broadband-modem-ublox.c
index 1ccb4be8..3bd7307c 100644
--- a/plugins/ublox/mm-broadband-modem-ublox.c
+++ b/plugins/ublox/mm-broadband-modem-ublox.c
@@ -840,9 +840,8 @@ create_bearer_step (GTask *task)
 
     case CREATE_BEARER_STEP_CREATE_BEARER:
         /* If we have a net interface, we'll create a u-blox bearer, unless for
-         * any reason we have the back-compatible profile selected, or if we don't
-         * know the mode to use. */
-        if ((ctx->self->priv->profile == MM_UBLOX_USB_PROFILE_ECM || ctx->self->priv->profile == MM_UBLOX_USB_PROFILE_RNDIS) &&
+         * any reason we have the back-compatible profile selected. */
+        if ((ctx->self->priv->profile != MM_UBLOX_USB_PROFILE_BACK_COMPATIBLE) &&
             (ctx->self->priv->mode == MM_UBLOX_NETWORKING_MODE_BRIDGE || ctx->self->priv->mode == MM_UBLOX_NETWORKING_MODE_ROUTER) &&
             mm_base_modem_peek_best_data_port (MM_BASE_MODEM (ctx->self), MM_PORT_TYPE_NET)) {
             mm_dbg ("u-blox: creating u-blox broadband bearer (%s profile, %s mode)...",
-- 
2.13.1



More information about the ModemManager-devel mailing list