mbox series

[Bluez,00/10] Bluetooth: Add new MGMT interface for advertising add

Message ID 20200916232542.1584854-1-danielwinkler@google.com (mailing list archive)
Headers show
Series Bluetooth: Add new MGMT interface for advertising add | expand

Message

Daniel Winkler Sept. 16, 2020, 11:25 p.m. UTC
Hi Maintainers,

This patch series defines the new two-call MGMT interface in userspace
for adding advertising instances. Bluez will detect if kernel supports
the new MGMT commands, and use them if so. Each new advertising instance
will be configured by a MGMT call to set advertising parameters,
followed by a MGMT call to set advertising data. The new data pipeline
is meant to be unnoticeable from the clients' perspective, with the
exception of new intervals and tx power support, and new exposed
advertising manager properties.

All changes have been tested on hatch (extended advertising) and kukui
(no extended advertising) chromebooks with manual testing verifying
correctness of parameters/data in btmon traces, and our automated test
suite of 25 single- and multi-advertising usage scenarios.

Thank you in advance for your review!
Daniel Winkler



Daniel Winkler (10):
  advertising: Detect if extended advertising mgmt commands are
    supported
  advertising: Parse intervals and tx power from adv
  advertising: Use new mgmt interface for advertising add
  advertising: Catch tx power selected event and handle it
  advertising: Query LE TX range at manager initialization
  advertising: Expose SupportedCapabilities for advertising
  client: Add SupportedCapabilities to bluetoothctl
  monitor: Add new MGMT adv commands and events to monitor
  doc/advertising-api: update API with new interface
  doc/mgmt-api: Add new MGMT interfaces to mgmt-api

 client/main.c           |   1 +
 doc/advertising-api.txt |  50 +++++
 doc/mgmt-api.txt        | 243 ++++++++++++++++++++
 lib/mgmt.h              |  45 ++++
 monitor/packet.c        |  84 +++++++
 src/advertising.c       | 476 ++++++++++++++++++++++++++++++++++++++--
 6 files changed, 884 insertions(+), 15 deletions(-)