From 246c7738b48c021e983d87086b4d783e07e20eac Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Mon, 31 Oct 2011 00:06:03 +0000 Subject: [PATCH] Hopefully fixed deepsleep mode --- src/plugins/openmoko.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/plugins/openmoko.c b/src/plugins/openmoko.c index d43275d..2f8161f 100644 --- a/src/plugins/openmoko.c +++ b/src/plugins/openmoko.c @@ -258,8 +258,9 @@ static int _event_modem_event(PhonePlugin * plugin, ModemEvent * event) /* enable echo cancellation */ _openmoko_queue(plugin, "AT%N0187"); break; - case PHONE_EVENT_TYPE_ONLINE: - _openmoko_deepsleep(plugin); + case MODEM_EVENT_TYPE_STATUS: + if(event->status.status == MODEM_STATUS_ONLINE) + _openmoko_deepsleep(plugin); break; default: break; @@ -334,12 +335,12 @@ static int _event_volume_set(PhonePlugin * plugin, gdouble level) /* openmoko_deepsleep */ static void _openmoko_deepsleep(PhonePlugin * plugin) { + PhonePluginHelper * helper = plugin->helper; char const * cmd = "AT%SLEEP=4"; /* allow deep sleep */ char const * p; - if((p = plugin->helper->config_get(plugin->helper->phone, "openmoko", - "deepsleep")) != NULL - && strtoul(p, NULL, 10) != 0) + if((p = helper->config_get(helper->phone, "openmoko", "deepsleep")) + != NULL && strtoul(p, NULL, 10) != 0) cmd = "AT%SLEEP=2"; /* prevent deep sleep */ /* XXX may reset the hardware modem */ _openmoko_queue(plugin, cmd);