Thread (15 messages) 15 messages, 3 authors, 2012-09-14

Re: [PATCH v2 07/10] battery: Add Battery to device

flat view

From: Andrzej Kaczmarek <hidden>
Date: 2012-09-14 16:15:55

Hi Chen,

On Thu, Sep 13, 2012 at 3:03 PM,  [off-list ref] wrote:
quoted hunk ↗ jump to hunk
From: Chen Ganir <redacted>

Add/Remove battery from device
---
 profiles/battery/battery.c |    5 +++++
 1 file changed, 5 insertions(+)
diff --git a/profiles/battery/battery.c b/profiles/battery/battery.c
index c368768..3a2e604 100644
--- a/profiles/battery/battery.c
+++ b/profiles/battery/battery.c
@@ -49,6 +49,7 @@ struct battery {
 static GSList *servers;

 struct characteristic {
+       struct btd_battery      *devbatt;       /* device_battery pointer */
        struct gatt_char        attr;           /* Characteristic */
        struct battery          *batt;          /* Parent Battery Service */
        GSList                  *desc;          /* Descriptors */
@@ -79,6 +80,8 @@ static void char_free(gpointer user_data)

        g_slist_free_full(c->desc, g_free);

+       btd_device_remove_battery(c->devbatt);
+
        g_free(c);
 }
@@ -228,6 +231,8 @@ static void configure_battery_cb(GSList *characteristics, guint8 status,

                        gatt_find_info(batt->attrib, start, end,
                                                        discover_desc_cb, ch);
+
+                       ch->devbatt = btd_device_add_battery(ch->batt->dev);
This should be done before starting characteristics discovery as
otherwise Battery won't be registered in case characteristics has no
descriptors (e.g. most devices which do not support notifications for
Battery Level and have only one battery).
                }
        }
 }
BR,
Andrzej
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help