diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2011-03-31 09:23:29 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2011-04-11 10:04:27 +0200 |
commit | 1fb0b9d79b9fd2d2004653a316b2bbbcc0efcc1f (patch) | |
tree | f96682e9081f069f817a8a10926077b7a914746d | |
parent | 262edb96d50138a724173840fc63ca93ede322c2 (diff) |
wavecom: disable default power up command
-rw-r--r-- | plugins/mm-modem-wavecom-gsm.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/plugins/mm-modem-wavecom-gsm.c b/plugins/mm-modem-wavecom-gsm.c index 3e39ffff..b080ac7f 100644 --- a/plugins/mm-modem-wavecom-gsm.c +++ b/plugins/mm-modem-wavecom-gsm.c @@ -95,6 +95,33 @@ grab_port (MMModem *modem, return !!port; } +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_UP_CMD: + /* Wavecom doesn't like CFUN=1, it will reset the whole software stack, + * including the USB connection and therefore connection would get + * closed */ + g_value_set_string (value, ""); + break; + default: + break; + } +} + /*****************************************************************************/ static void @@ -111,5 +138,14 @@ mm_modem_wavecom_gsm_init (MMModemWavecomGsm *self) static void mm_modem_wavecom_gsm_class_init (MMModemWavecomGsmClass *klass) { + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->get_property = get_property; + object_class->set_property = set_property; + + g_object_class_override_property (object_class, + MM_GENERIC_GSM_PROP_POWER_UP_CMD, + MM_GENERIC_GSM_POWER_UP_CMD); + } |