From: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
To: Miao-chen Chou <mcchou@chromium.org>
Cc: Bluetooth Kernel Mailing List <linux-bluetooth@vger.kernel.org>,
Yoni Shavit <yshavit@chromium.org>,
Luiz Augusto von Dentz <luiz.von.dentz@intel.com>,
Alain Michaud <alainm@chromium.org>,
Michael Sun <michaelfsun@google.com>,
Marcel Holtmann <marcel@holtmann.org>
Subject: Re: [BlueZ PATCH v2] lib: Add definitions for advertisement monitor features
Date: Thu, 11 Jun 2020 15:38:07 -0700 [thread overview]
Message-ID: <CABBYNZL0_kkoUzuAysoq=VvH-pw2Lz=7-UPCW1rRu4eSqwKzGw@mail.gmail.com> (raw)
In-Reply-To: <20200518200949.BlueZ.v2.1.I6e499969d74a49ab2a152bf0484a18c08a07a267@changeid>
Hi Miao,
On Mon, May 18, 2020 at 8:14 PM Miao-chen Chou <mcchou@chromium.org> wrote:
>
> This adds the following command opcodes, event codes and the corresponding
> structures.
> - MGMT_OP_READ_ADV_MONITOR_FEATURES
> - MGMT_OP_ADD_ADV_PATTERNS_MONITOR
> - MGMT_OP_REMOVE_ADV_MONITOR
> - MGMT_EV_ADV_MONITOR_ADDED
> - MGMT_EV_ADV_MONITOR_REMOVED
> ---
>
> Changes in v2:
> - Fix build failures.
>
> lib/mgmt.h | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 51 insertions(+)
>
> diff --git a/lib/mgmt.h b/lib/mgmt.h
> index b4fc72069..6d7441ccc 100644
> --- a/lib/mgmt.h
> +++ b/lib/mgmt.h
> @@ -628,6 +628,42 @@ struct mgmt_rp_set_exp_feature {
> uint32_t flags;
> } __packed;
>
> +#define MGMT_ADV_MONITOR_FEATURE_MASK_OR_PATTERNS (1 << 0)
> +
> +#define MGMT_OP_READ_ADV_MONITOR_FEATURES 0x004B
> +struct mgmt_rp_read_adv_monitor_features {
> + uint32_t supported_features;
> + uint32_t enabled_features;
> + uint16_t max_num_handles;
> + uint8_t max_num_patterns;
> + uint16_t num_handles;
> + uint16_t handles[0];
> +} __packed;
> +
> +struct mgmt_adv_pattern {
> + uint8_t ad_type;
> + uint8_t offset;
> + uint8_t length;
> + uint8_t value[31];
> +} __packed;
> +
> +#define MGMT_OP_ADD_ADV_PATTERNS_MONITOR 0x004C
> +struct mgmt_cp_add_adv_patterns_monitor {
> + uint8_t pattern_count;
> + struct mgmt_adv_pattern patterns[0];
> +} __packed;
> +struct mgmt_rp_add_adv_patterns_monitor {
> + uint16_t monitor_handle;
> +} __packed;
> +
> +#define MGMT_OP_REMOVE_ADV_MONITOR 0x004D
> +struct mgmt_cp_remove_adv_monitor {
> + uint16_t monitor_handle;
> +} __packed;
> +struct mgmt_rp_remove_adv_monitor {
> + uint16_t monitor_handle;
> +} __packed;
> +
> #define MGMT_EV_CMD_COMPLETE 0x0001
> struct mgmt_ev_cmd_complete {
> uint16_t opcode;
> @@ -857,6 +893,16 @@ struct mgmt_ev_exp_feature_changed {
> uint32_t flags;
> } __packed;
>
> +#define MGMT_EV_ADV_MONITOR_ADDED 0x0028
> +struct mgmt_ev_adv_monitor_added {
> + uint16_t monitor_handle;
> +} __packed;
> +
> +#define MGMT_EV_ADV_MONITOR_REMOVED 0x0029
> +struct mgmt_ev_adv_monitor_removed {
> + uint16_t monitor_handle;
> +} __packed;
> +
> static const char *mgmt_op[] = {
> "<0x0000>",
> "Read Version",
> @@ -933,6 +979,9 @@ static const char *mgmt_op[] = {
> "Read Security Information", /* 0x0048 */
> "Read Experimental Features Information",
> "Set Experimental Feature",
> + "Read Advertisement Monitor Features",
> + "Add Advertisement Patterns Monitor",
> + "Remove Advertisement Monitor",
> };
>
> static const char *mgmt_ev[] = {
> @@ -976,6 +1025,8 @@ static const char *mgmt_ev[] = {
> "Extended Controller Information Changed",
> "PHY Configuration Changed",
> "Experimental Feature Changed",
> + "Advertisement Monitor Added", /* 0x0028 */
> + "Advertisement Monitor Removed",
> };
>
> static const char *mgmt_status[] = {
> --
> 2.26.2
>
Applied, thanks. Note I did adjust the opcodes so it matches the ones
used in the documentation, I've also dropped the pattern term from the
add command since we can assume a monitor will always be filtering
based on patterns and it is not used for the event.
--
Luiz Augusto von Dentz
next prev parent reply other threads:[~2020-06-11 22:38 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-19 3:10 [BlueZ PATCH v2] lib: Add definitions for advertisement monitor features Miao-chen Chou
2020-06-11 22:38 ` Luiz Augusto von Dentz [this message]
2020-06-11 23:27 ` Miao-chen Chou
2020-06-12 0:53 ` Luiz Augusto von Dentz
2020-06-12 1:34 ` Miao-chen Chou
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='CABBYNZL0_kkoUzuAysoq=VvH-pw2Lz=7-UPCW1rRu4eSqwKzGw@mail.gmail.com' \
--to=luiz.dentz@gmail.com \
--cc=alainm@chromium.org \
--cc=linux-bluetooth@vger.kernel.org \
--cc=luiz.von.dentz@intel.com \
--cc=marcel@holtmann.org \
--cc=mcchou@chromium.org \
--cc=michaelfsun@google.com \
--cc=yshavit@chromium.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).