OSDN Git Service

Get thermometer service range to load the driver.
authorSantiago Carot-Nemesio <sancane@gmail.com>
Thu, 13 Oct 2011 15:29:14 +0000 (17:29 +0200)
committerJohan Hedberg <johan.hedberg@intel.com>
Mon, 17 Oct 2011 08:08:22 +0000 (11:08 +0300)
thermometer/manager.c
thermometer/thermometer.c
thermometer/thermometer.h

index 08f0e0a..6b98bca 100644 (file)
  */
 
 #include <gdbus.h>
+#include <errno.h>
+#include <bluetooth/uuid.h>
 
 #include "adapter.h"
 #include "device.h"
+#include "att.h"
 #include "thermometer.h"
 #include "manager.h"
 
@@ -33,7 +36,16 @@ static DBusConnection *connection = NULL;
 
 static int thermometer_driver_probe(struct btd_device *device, GSList *uuids)
 {
-       return thermometer_register(connection, device);
+       struct att_primary *tattr;
+       GSList *list;
+
+       list = device_services_from_record(device, uuids);
+       if (list == NULL)
+               return -EINVAL;
+
+       tattr = list->data;
+
+       return thermometer_register(connection, device, tattr);
 }
 
 static void thermometer_driver_remove(struct btd_device *device)
index 3cd821a..027ae02 100644 (file)
  */
 
 #include <gdbus.h>
+#include <bluetooth/uuid.h>
 
 #include "adapter.h"
 #include "device.h"
+#include "att.h"
 #include "thermometer.h"
 
-int thermometer_register(DBusConnection *connection, struct btd_device *device)
+int thermometer_register(DBusConnection *connection, struct btd_device *device,
+                                               struct att_primary *tattr)
 {
        /* TODO: Register Health Thermometer Interface */
        return 0;
index 0937444..298c9ad 100644 (file)
@@ -20,5 +20,6 @@
  *
  */
 
-int thermometer_register(DBusConnection *connection, struct btd_device *device);
+int thermometer_register(DBusConnection *connection, struct btd_device *device,
+                                               struct att_primary *tattr);
 void thermometer_unregister(struct btd_device *device);