Re: [MM] [PATCH 2/3] ZTE: Use +CFUN=4 to turn off radios when disabling
- From: Dan Williams <dcbw redhat com>
- To: Aleksander Morgado <aleksander lanedo com>
- Cc: networkmanager-list <networkmanager-list gnome org>
- Subject: Re: [MM] [PATCH 2/3] ZTE: Use +CFUN=4 to turn off radios when disabling
- Date: Tue, 24 Apr 2012 12:14:15 -0500
On Tue, 2012-04-24 at 09:38 +0200, Aleksander Morgado wrote:
> Hey,
>
> >> In the ZTE plugin case, using POWER_UP as well may be not needed, as the
> >> plugin overrides the whole enabling sequence, and therefore the generic
> >> code launching the power up command from that property is never called
> >> (just check if there is a +CFUN=1 command sent alone in the logs). But
> >> for POWER_DOWN, it probably applies.
> >
> > Thank you for your advices! I have applied POWER_DOWN property to ZTE
> > plugin. This is my renewed patch:
>
> Dan, how safe do you think it is to include CFUN=4 as power down for
> every ZTE modem? Any known issue with that?
I think CFUN=4 is a lot safer than CFUN=0 :) I say go for it; I've
never heard of a function for CFUN=4 that's not rfkill and if the modem
doesn't support it, then we just need to make sure we ignore the error.
Dan
>
> >
> > --- a/plugins/mm-modem-zte.c 2012-03-13 23:06:11.000000000 +0400
> > +++ b/plugins/mm-modem-zte.c 2012-04-20 01:05:13.835960168 +0400
> > @@ -677,6 +677,32 @@
> > 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_DOWN_CMD:
> > + /* Use AT+CFUN=4 for power down. It will stop the RF (IMSI detach), and
> > + * keeps access to the SIM */
> > + g_value_set_string (value, "+CFUN=4");
> > + break;
> > + default:
> > + break;
> > + }
> > +}
> > +
> > /*****************************************************************************/
> >
> > static MMModemIceraPrivate *
> > @@ -759,6 +785,13 @@
> > mm_modem_zte_parent_class = g_type_class_peek_parent (klass);
> > g_type_class_add_private (object_class, sizeof (MMModemZtePrivate));
> >
> > + 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);
> > +
> > object_class->dispose = dispose;
> > gsm_class->do_enable = do_enable;
> > gsm_class->do_disconnect = do_disconnect;
> >
> >
>
>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]