Re: [Bluez PATCH v5 00/10] Bluetooth: Add new MGMT interface for advertising add

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daniel,

On Thu, Oct 29, 2020 at 2:27 PM Daniel Winkler <danielwinkler@xxxxxxxxxx> wrote:
>
> 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.
>
> V2 of the series puts documentation at the front as requested.
>
> Thank you in advance for your review!
> Daniel Winkler
>
>
> Changes in v5:
> - Changed interval API from jiffies to milliseconds for clarity
> - Changed new dbus endpoints to be experimental
> - Only parse new properties if experimental flag is set
> - Verify capabilities MGMT command is supported before calling it
> - Make SupportedCapabilities experimental
>
> Changes in v4:
> - mgmt-api: moved optional params into 'flags' field
> - mgmt-api: added info for new return parameters for max data size
> - mgmt-api: Move Controller Capabilities MGMT doc into new patch
> - mgmt-api: Tx Power range put into single capabilities entry
> - Moved optional params into flags field
> - Use returned max data length in adv data length check
> - Move tx power range into single capability field
>
> Changes in v3:
> - Removed Tx Power Selected MGMT event
> - Changed Read Security Info cmd to  Read Controller Capabilities
> - Added selected tx power to MGMT params response
> - Removed Tx Power Selected MGMT event from monitor
>
> Changes in v2:
> - Removed extra space in Add Extended Advertising Parameters API
> - Uses btd_has_kernel_features to detect kernel command support
> - Cleaned fail path in add_adv_params_callback
>
> Daniel Winkler (10):
>   doc/advertising-api: update API with new interface
>   doc/mgmt-api: Add new Advertising MGMT interfaces to mgmt-api
>   doc/mgmt-api: Update controller capabilities MGMT command in mgmt-api
>   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: 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
>
>  client/main.c           |   1 +
>  doc/advertising-api.txt |  48 +++++
>  doc/mgmt-api.txt        | 238 +++++++++++++++++++++-
>  lib/mgmt.h              |  46 ++++-
>  monitor/packet.c        |  69 ++++++-
>  src/adapter.c           |   8 +
>  src/adapter.h           |   2 +
>  src/advertising.c       | 428 ++++++++++++++++++++++++++++++++++++++--
>  tools/btmgmt.c          |  12 +-
>  9 files changed, 819 insertions(+), 33 deletions(-)
>
> --
> 2.29.1.341.ge80a0c044ae-goog

[detached HEAD 1cfa60010] advertising: Detect if extended advertising
mgmt commands are supported
 Author: Daniel Winkler <danielwinkler@xxxxxxxxxx>
 Date: Thu Oct 29 14:23:29 2020 -0700
 3 files changed, 8 insertions(+)
Executing: make -j12
...
src/adapter.c: In function ‘read_commands_complete’:
src/adapter.c:9569:8: error: ‘MGMT_OP_ADD_EXT_ADV_PARAMS’ undeclared
(first use in this function); did you mean ‘MGMT_OP_SET_S?
 9569 |   case MGMT_OP_ADD_EXT_ADV_PARAMS:
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |        MGMT_OP_SET_SCAN_PARAMS


Please make sure that each individual patch do compile properly, this
ensures the patches can be bisected/reverted cleanly, also it looks
the last patch of the series do need a rebase since I just applied a
few patches to monitor.

-- 
Luiz Augusto von Dentz




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux