diff options
author | Dan Williams <dcbw@redhat.com> | 2012-08-28 21:33:44 -0500 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2012-08-29 10:02:18 -0500 |
commit | 7a4bc7b4a878df0232008a976532be59425b00aa (patch) | |
tree | 9a4972b12a5be2073626b6ae51aa86c2fa1e1d16 | |
parent | 90e705f0dcf44acf288075c79a77a933fc433a0d (diff) |
sierra: allow users to help debug APP1 PPP capability
Most Sierra PPP-based devices are supposed to allow PPP on the
APP1 port, which has a dumb AT parser, leaving the main port
(with the intelligent AT parser) free for status and signal strength.
But out of all the devices I've tested it with (8775, 8781, AC881,
and C885), only the C885 actually works. The rest (including three
different firmware versions for the 8775) either crash or disconnect
shortly after PPP starts.
To help figure out which devices actually support this, when
running MM in debug mode, users can set the MM_SIERRA_APP1_PPP_OK
environment variable and assume the APP1 port allows PPP. This
is only for debugging purposes.
-rw-r--r-- | plugins/mm-plugin-sierra.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/plugins/mm-plugin-sierra.c b/plugins/mm-plugin-sierra.c index 65555255..51ad1741 100644 --- a/plugins/mm-plugin-sierra.c +++ b/plugins/mm-plugin-sierra.c @@ -11,14 +11,17 @@ * GNU General Public License for more details: * * Copyright (C) 2008 - 2009 Novell, Inc. - * Copyright (C) 2009 Red Hat, Inc. + * Copyright (C) 2012 Red Hat, Inc. */ #include <string.h> +#include <stdlib.h> + #include <gmodule.h> #include "mm-plugin-sierra.h" #include "mm-modem-sierra-gsm.h" #include "mm-modem-sierra-cdma.h" +#include "mm-log.h" G_DEFINE_TYPE (MMPluginSierra, mm_plugin_sierra, MM_TYPE_PLUGIN_BASE) @@ -75,6 +78,12 @@ handle_probe_response (MMPluginBase *self, if (strstr (response, "C885")) g_object_set_data (G_OBJECT (task), TAG_SIERRA_APP_PPP_OK, GUINT_TO_POINTER (TRUE)); + /* For debugging: let users figure out if their device supports it or not */ + if (getenv ("MM_SIERRA_APP1_PPP_OK")) { + mm_dbg ("Sierra: APP1 PPP OK '%s'", response); + g_object_set_data (G_OBJECT (task), TAG_SIERRA_APP_PPP_OK, GUINT_TO_POINTER (TRUE)); + } + mm_plugin_base_supports_task_complete (task, 10); return; } |