From: Daniel Wagner <daniel.wag...@bmw-carit.de> --- dundee/bluetooth.c | 1 + dundee/device.c | 17 +++++++++++++++++ dundee/dundee.h | 6 ++++++ 3 files changed, 24 insertions(+)
diff --git a/dundee/bluetooth.c b/dundee/bluetooth.c index 0fb00a4..c124f60 100644 --- a/dundee/bluetooth.c +++ b/dundee/bluetooth.c @@ -137,6 +137,7 @@ static const char *bt_serial(struct dundee_device *device) struct dundee_device_driver bluetooth_driver = { .name = "bluetooth", + .type = DUNDEE_DEVICE_TYPE_BLUETOOTH, .connect = bt_connect, .disconnect = bt_disconnect, .serial = bt_serial, diff --git a/dundee/device.c b/dundee/device.c index 9733b09..fa549e1 100644 --- a/dundee/device.c +++ b/dundee/device.c @@ -62,6 +62,18 @@ struct dundee_device { void *data; }; +static const char *device_type_to_string(enum dundee_device_type type) +{ + switch (type) { + case DUNDEE_DEVICE_TYPE_BLUETOOTH: + return "bluetooth"; + case DUNDEE_DEVICE_TYPE_USB: + return "usb"; + } + + return "unknown"; +} + const char *__dundee_device_get_path(struct dundee_device *device) { return device->path; @@ -130,6 +142,7 @@ void __dundee_device_append_properties(struct dundee_device *device, DBusMessageIter *dict) { const char *serial; + const char *type; settings_append_dict(device, dict); @@ -146,6 +159,10 @@ void __dundee_device_append_properties(struct dundee_device *device, if (serial) ofono_dbus_dict_append(dict, "Serial", DBUS_TYPE_STRING, &serial); + + type = device_type_to_string(device->driver->type); + ofono_dbus_dict_append(dict, "Type", DBUS_TYPE_STRING, + &type); } void __dundee_device_foreach(dundee_device_foreach_func func, void *userdata) diff --git a/dundee/dundee.h b/dundee/dundee.h index ca53c88..b954a91 100644 --- a/dundee/dundee.h +++ b/dundee/dundee.h @@ -33,6 +33,11 @@ enum dundee_error_type { DUNDEE_ERROR_TYPE_FAILURE, }; +enum dundee_device_type { + DUNDEE_DEVICE_TYPE_BLUETOOTH = 0, + DUNDEE_DEVICE_TYPE_USB, +}; + struct dundee_error { enum dundee_error_type type; int error; @@ -113,6 +118,7 @@ typedef void (*dundee_device_disconnect_cb_t)(const struct dundee_error *error, struct dundee_device_driver { const char *name; + enum dundee_device_type type; /* Connect and dial */ void (*connect)(struct dundee_device *device, -- 1.7.10.130.g36e6c _______________________________________________ ofono mailing list ofono@ofono.org http://lists.ofono.org/listinfo/ofono