[PATCH 2/2 v2] huawei: implement modem reset via +CFUN=16 for MU736
Aleksander Morgado
aleksander at lanedo.com
Wed Aug 14 00:36:37 PDT 2013
On 14/08/13 09:33, Aleksander Morgado wrote:
> On 14/08/13 09:01, Ben Chan wrote:
>> ---
>> plugins/huawei/mm-broadband-modem-huawei.c | 13 ++++++++++++-
>> 1 file changed, 12 insertions(+), 1 deletion(-)
>>
>
> Pushed, thanks.
>
Second thoughts after pushing, as always :)
Just wondering:
* Is it possible to run AT+CFUN=? and get whether the modem supports
AT+CFUN=16?
* Does AT+CFUN=16 always mean reset?
If both above are TRUE, can we instead maybe check whether AT+CFUN=16 is
supported and use it for reset if so, and otherwise fallback to ^RESET?
That should avoid having to match the model; and therefore less
maintenance burden when new models are released...
>> diff --git a/plugins/huawei/mm-broadband-modem-huawei.c b/plugins/huawei/mm-broadband-modem-huawei.c
>> index c34acc2..f356102 100644
>> --- a/plugins/huawei/mm-broadband-modem-huawei.c
>> +++ b/plugins/huawei/mm-broadband-modem-huawei.c
>> @@ -437,8 +437,19 @@ reset (MMIfaceModem *self,
>> GAsyncReadyCallback callback,
>> gpointer user_data)
>> {
>> + const gchar *command;
>> +
>> + /* Unlike other Huawei modems that support AT^RESET for resetting the modem,
>> + * Huawei MU736 supports AT^RESET but does not reset the modem upon receiving
>> + * AT^RESET. It does, however, support resetting itself via AT+CFUN=16.
>> + */
>> + if (g_strcmp0 (mm_iface_modem_get_model (self), "MU736") == 0)
>> + command = "+CFUN=16";
>> + else
>> + command = "^RESET";
>> +
>> mm_base_modem_at_command (MM_BASE_MODEM (self),
>> - "^RESET",
>> + command,
>> 3,
>> FALSE,
>> callback,
>>
>
>
--
Aleksander
More information about the ModemManager-devel
mailing list