aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2012-08-28 21:33:44 -0500
committerDan Williams <dcbw@redhat.com>2012-08-29 10:02:18 -0500
commit7a4bc7b4a878df0232008a976532be59425b00aa (patch)
tree9a4972b12a5be2073626b6ae51aa86c2fa1e1d16
parent90e705f0dcf44acf288075c79a77a933fc433a0d (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.c11
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;
}