diff --git a/recipes-connectivity/modemmanager/files/0001-Use-default-PDP-ctx-4-with-LTE-and-don-t-try-to-auth.patch b/recipes-connectivity/modemmanager/files/0001-Use-default-PDP-ctx-4-with-LTE-and-don-t-try-to-auth.patch new file mode 100644 index 0000000..8add698 --- /dev/null +++ b/recipes-connectivity/modemmanager/files/0001-Use-default-PDP-ctx-4-with-LTE-and-don-t-try-to-auth.patch @@ -0,0 +1,68 @@ +From 66d04a3003f5974dbf1acd5b03b4fa7e50a1ccb0 Mon Sep 17 00:00:00 2001 +From: Alexandre Bard +Date: Wed, 12 Dec 2018 15:25:11 +0100 +Subject: [PATCH] Use default PDP ctx(4) with LTE and don't try to authenticate + on it + +--- + plugins/ublox/mm-broadband-bearer-ublox.c | 2 +- + src/mm-broadband-bearer.c | 14 +++++++++++++- + 2 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/plugins/ublox/mm-broadband-bearer-ublox.c b/plugins/ublox/mm-broadband-bearer-ublox.c +index 1adcaa2..37338de 100644 +--- a/plugins/ublox/mm-broadband-bearer-ublox.c ++++ b/plugins/ublox/mm-broadband-bearer-ublox.c +@@ -530,7 +530,7 @@ check_supported_authentication_methods (GTask *task) + + /* Flag whether authentication is required. If it isn't, we won't fail + * connection attempt if the +UAUTHREQ command fails */ +- ctx->auth_required = (user && password && allowed_auth != MM_BEARER_ALLOWED_AUTH_NONE); ++ ctx->auth_required = (ctx->cid != 4 && user && password && allowed_auth != MM_BEARER_ALLOWED_AUTH_NONE); + + /* If we already cached the support, not do it again */ + if (self->priv->allowed_auths != MM_UBLOX_BEARER_ALLOWED_AUTH_UNKNOWN) { +diff --git a/src/mm-broadband-bearer.c b/src/mm-broadband-bearer.c +index 779cd9a..db570bd 100644 +--- a/src/mm-broadband-bearer.c ++++ b/src/mm-broadband-bearer.c +@@ -773,6 +773,7 @@ parse_cid_range (MMBaseModem *modem, + gchar *ip_family_str; + + ip_family_str = mm_bearer_ip_family_build_string_from_mask (format->pdp_type); ++ if (ctx->max_cid == 3) ctx->max_cid = 4; + if (ctx->max_cid < format->max_cid) { + cid = ctx->max_cid + 1; + mm_dbg ("Using empty CID %u with PDP type '%s'", cid, ip_family_str); +@@ -810,6 +811,7 @@ parse_pdp_list (MMBaseModem *modem, + GList *pdp_list; + GList *l; + guint cid; ++ gboolean lte_dflt_cid_detected = FALSE; + + /* If cancelled, set result error */ + if (g_cancellable_is_cancelled (ctx->cancellable)) { +@@ -862,9 +864,19 @@ parse_pdp_list (MMBaseModem *modem, + g_free (ip_family_str); + } + +- /* Look for the exact PDP context we want */ ++ /* Check if PDP context 4 is present */ + for (l = pdp_list; l; l = g_list_next (l)) { + MM3gppPdpContext *pdp = l->data; ++ if(pdp->cid == 4){ ++ lte_dflt_cid_detected = TRUE; ++ ctx->use_existing_cid = TRUE; ++ cid = 4; ++ break; ++ } ++ } ++ /* Look for the exact PDP context we want */ ++ for (l = pdp_list; l && !lte_dflt_cid_detected; l = g_list_next (l)) { ++ MM3gppPdpContext *pdp = l->data; + + if (pdp->pdp_type == ctx->ip_family) { + const gchar *apn; +-- +2.1.4 + diff --git a/recipes-connectivity/modemmanager/modemmanager_1.8.2.bbappend b/recipes-connectivity/modemmanager/modemmanager_1.8.2.bbappend new file mode 100644 index 0000000..c959262 --- /dev/null +++ b/recipes-connectivity/modemmanager/modemmanager_1.8.2.bbappend @@ -0,0 +1,3 @@ +SRC_URI_append_am335x-nmhw21 = " \ + file://0001-Use-default-PDP-ctx-4-with-LTE-and-don-t-try-to-auth.patch \ + "