aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius B. Kotsbak <marius@kotsbak.com>2012-08-08 22:49:33 +0200
committerAleksander Morgado <aleksander@lanedo.com>2012-08-09 07:48:58 +0200
commit36ef5fa278a932913db77771540c28a1f3296a1d (patch)
treea724885f06187c7c6af688a71e64583a5dcd5b4f
parentcaaa9a8813720cc39b3c11753685368eb9856da6 (diff)
mbm: use +CFUN=4 for powering down
(bgo #665877) (lp:816400)
-rw-r--r--plugins/mm-modem-mbm.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/plugins/mm-modem-mbm.c b/plugins/mm-modem-mbm.c
index 07fd389a..76b2aea3 100644
--- a/plugins/mm-modem-mbm.c
+++ b/plugins/mm-modem-mbm.c
@@ -1047,6 +1047,31 @@ finalize (GObject *object)
}
static void
+set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+ /* Do nothing... see set_property() in parent, which also does nothing */
+}
+
+static void
+get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ switch (prop_id) {
+ case MM_GENERIC_GSM_PROP_POWER_DOWN_CMD:
+ /* Use AT+CFUN=4 for power down. */
+ g_value_set_string (value, "+CFUN=4");
+ break;
+ default:
+ break;
+ }
+}
+
+static void
mm_modem_mbm_class_init (MMModemMbmClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
@@ -1057,6 +1082,12 @@ mm_modem_mbm_class_init (MMModemMbmClass *klass)
/* Virtual methods */
object_class->finalize = finalize;
+ object_class->get_property = get_property;
+ object_class->set_property = set_property;
+
+ g_object_class_override_property (object_class,
+ MM_GENERIC_GSM_PROP_POWER_DOWN_CMD,
+ MM_GENERIC_GSM_POWER_DOWN_CMD);
gsm_class->port_grabbed = port_grabbed;
gsm_class->ports_organized = ports_organized;