linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arman Uguray <armansito@chromium.org>
To: linux-bluetooth@vger.kernel.org
Cc: Arman Uguray <armansito@chromium.org>
Subject: [PATCH BlueZ 0/5] shared/gatt-db: Add support for client role.
Date: Tue, 25 Nov 2014 21:26:44 -0800	[thread overview]
Message-ID: <1416979609-3056-1-git-send-email-armansito@chromium.org> (raw)

This patch introduces new API functions to shared/gatt-db to prepare it for
GATT client-role usage. This is the first step before rewriting
shared/gatt-client using gatt-db.

This patch set adds the following:
  - Functions for extracting service, characteristic, descriptor, and include
    definition information from appropriate attributes.
  - foreach functions that allows iterating through all services, listing the
    characteristics of a particular service, etc.
  - Database clear functions to remove services from that database as needed.
  - A new service insertion function for inserting a service with a pre-defined
    handle into the database.
  - A new queue_insert_after function for shared/queue to enable the previous
    point.

Comments are welcome. I have implemented a trial version of the new gatt-client
using the above additions and this is the basic set of functionality that should
enable most use cases for client role. I think this gives us enough of a
starting point that we can easily change later if we find that these could be
done better.

Arman Uguray (5):
  shared/gatt-db: Add high-level functions for client
  shared: Add function to insert element after entry
  unit/test-queue: Add /queue/insert_after test
  shared/gatt-db: Add gatt_db_insert_service function
  shared/gatt-db: Add clear functions

 src/shared/gatt-db.c | 446 +++++++++++++++++++++++++++++++++++++++++++++++++--
 src/shared/gatt-db.h |  46 ++++++
 src/shared/queue.c   |  30 ++++
 src/shared/queue.h   |   1 +
 unit/test-queue.c    |  41 +++++
 5 files changed, 553 insertions(+), 11 deletions(-)

-- 
2.2.0.rc0.207.ga3a616c


             reply	other threads:[~2014-11-26  5:26 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-26  5:26 Arman Uguray [this message]
2014-11-26  5:26 ` [PATCH BlueZ 1/5] shared/gatt-db: Add high-level functions for client Arman Uguray
2014-11-26 10:37   ` Luiz Augusto von Dentz
2014-11-26 21:48     ` Arman Uguray
2014-11-26  5:26 ` [PATCH BlueZ 2/5] shared: Add function to insert element after entry Arman Uguray
2014-11-26 10:15   ` Luiz Augusto von Dentz
2014-11-26  5:26 ` [PATCH BlueZ 3/5] unit/test-queue: Add /queue/insert_after test Arman Uguray
2014-11-26  5:26 ` [PATCH BlueZ 4/5] shared/gatt-db: Add gatt_db_insert_service function Arman Uguray
2014-11-26  5:26 ` [PATCH BlueZ 5/5] shared/gatt-db: Add clear functions Arman Uguray

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1416979609-3056-1-git-send-email-armansito@chromium.org \
    --to=armansito@chromium.org \
    --cc=linux-bluetooth@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).