Parent: a891c1adb541a73aac7dfeb33cce3cae807e1155
Author: Arman Uguray <armansito@chromium.org>
Committer: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Date: 2014-12-19 22:49:23
Tree: c386a35dd3b1bc598d54fe7fffd3e9b0d7aef671
core/device: Make profile calls in GATT events This patch correctly integrates all profile calls into the various GATT client events (ready, service-added, service-removed) so that profiles can perform the necessary updates. The major changes introduced in this this patch are: 1. Added new profile probe/remove functions for GATT services, which operate on a btd_device's client db and initialize btd_service instances with start & end handles: - device_probe_gatt_profiles - device_probe_gatt_profile - device_remove_gatt_profile - device_accept_gatt_profiles 2. device_probe_gatt_profiles is called after service discovery on all profiles for new services and any stale services are removed from the profiles. 3. device_accept_gatt_profiles is called to notify profiles of a new connection when the gatt-client becomes ready. This is call immediately after a probe, if the probe was done for a newly found service after a "Service Changed" event. 4. device_probe_gatt_profile is called when a new GATT service is added to the db. 5. device_remove_gatt_profile is called when a GATT service is removed from the db.
Diffstat
| M | src/device.c | | | 367 | ++++++++++++++++++++++++++++++++++++++++- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
1 files changed, 318 insertions(+), 49 deletions(-)