aboutsummaryrefslogtreecommitdiff
path: root/plugins/sierra/mm-plugin-sierra.c
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2012-08-28 21:33:44 -0500
committerAleksander Morgado <aleksander@lanedo.com>2012-08-31 15:11:30 +0200
commit63ef0990b65a46b56707e6f28534e0e01bc4e22c (patch)
tree64c7c1a094b4b9024e0d45cdafcfa013ee536cfd /plugins/sierra/mm-plugin-sierra.c
parent369e14f1d374eb2eaeda9724aa70fd0b7242dfab (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.
Diffstat (limited to 'plugins/sierra/mm-plugin-sierra.c')
-rw-r--r--plugins/sierra/mm-plugin-sierra.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/plugins/sierra/mm-plugin-sierra.c b/plugins/sierra/mm-plugin-sierra.c
index a258a4eb..122d2499 100644
--- a/plugins/sierra/mm-plugin-sierra.c
+++ b/plugins/sierra/mm-plugin-sierra.c
@@ -16,6 +16,7 @@
*/
#include <string.h>
+#include <stdlib.h>
#include <gmodule.h>
#include <libmm-common.h>
@@ -97,6 +98,12 @@ gcap_ready (MMAtSerialPort *port,
*/
if (strstr (response->str, "C885"))
g_object_set_data (G_OBJECT (ctx->probe), 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->str);
+ g_object_set_data (G_OBJECT (ctx->probe), TAG_SIERRA_APP_PPP_OK, GUINT_TO_POINTER (TRUE));
+ }
}
g_simple_async_result_set_op_res_gboolean (ctx->result, TRUE);