From: Luiz Augusto von Dentz <[email protected]>
This adds support for LE BIG Info Advertising Report.
---
monitor/bt.h | 17 +++++++++++++++++
monitor/packet.c | 23 +++++++++++++++++++++++
2 files changed, 40 insertions(+)
diff --git a/monitor/bt.h b/monitor/bt.h
index 704c70fba..e9f72de36 100644
--- a/monitor/bt.h
+++ b/monitor/bt.h
@@ -3653,6 +3653,23 @@ struct bt_hci_evt_le_req_peer_sca_complete {
uint8_t sca;
} __attribute__ ((packed));
+#define BT_HCI_EVT_LE_BIG_INFO_ADV_REPORT 0x22
+struct bt_hci_evt_le_big_info_adv_report {
+ uint16_t sync_handle;
+ uint8_t num_bis;
+ uint8_t nse;
+ uint16_t iso_interval;
+ uint8_t bn;
+ uint8_t pto;
+ uint8_t irc;
+ uint16_t max_pdu;
+ uint8_t sdu_interval[3];
+ uint16_t max_sdu;
+ uint8_t phy;
+ uint8_t framing;
+ uint8_t encryption;
+} __attribute__ ((packed));
+
#define BT_HCI_ERR_SUCCESS 0x00
#define BT_HCI_ERR_UNKNOWN_COMMAND 0x01
#define BT_HCI_ERR_UNKNOWN_CONN_ID 0x02
diff --git a/monitor/packet.c b/monitor/packet.c
index b7431b57d..775b4276e 100644
--- a/monitor/packet.c
+++ b/monitor/packet.c
@@ -10886,6 +10886,25 @@ static void le_req_sca_complete_evt(const void *data, uint8_t size)
print_sca(evt->sca);
}
+static void le_big_info_evt(const void *data, uint8_t size)
+{
+ const struct bt_hci_evt_le_big_info_adv_report *evt = data;
+
+ print_field("Sync Handle: 0x%4.4x", evt->sync_handle);
+ print_field("Number BIS: %u", evt->num_bis);
+ print_field("NSE: %u", evt->nse);
+ print_slot_125("ISO Interval", evt->iso_interval);
+ print_field("BN: %u", evt->bn);
+ print_field("PTO: %u", evt->bn);
+ print_field("IRC: %u", evt->irc);
+ print_field("Maximum PDU: %u", evt->max_pdu);
+ print_usec_interval("SDU Interval", evt->sdu_interval);
+ print_field("Maximum SDU: %u", evt->max_sdu);
+ print_le_phy("PHY", evt->phy);
+ print_framing(evt->framing);
+ print_field("Encryption: 0x%02x", evt->encryption);
+}
+
struct subevent_data {
uint8_t subevent;
const char *str;
@@ -11004,6 +11023,10 @@ static const struct subevent_data le_meta_event_table[] = {
le_req_sca_complete_evt,
sizeof(
struct bt_hci_evt_le_req_peer_sca_complete)},
+ { BT_HCI_EVT_LE_BIG_INFO_ADV_REPORT,
+ "LE Broadcast Isochronous Group Info Advertising Report",
+ le_big_info_evt,
+ sizeof(struct bt_hci_evt_le_big_info_adv_report) },
{ }
};
--
2.35.1
Hello:
This series was applied to bluetooth/bluez.git (master)
by Luiz Augusto von Dentz <[email protected]>:
On Wed, 6 Apr 2022 14:33:53 -0700 you wrote:
> From: Luiz Augusto von Dentz <[email protected]>
>
> This adds support for LE BIG Info Advertising Report.
> ---
> monitor/bt.h | 17 +++++++++++++++++
> monitor/packet.c | 23 +++++++++++++++++++++++
> 2 files changed, 40 insertions(+)
Here is the summary with links:
- [BlueZ,1/3] monitor: Add support for LE BIG Info Adverting Report
https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=0533085d22ba
- [BlueZ,2/3] btdev: Add support for sending LE BIG Info Adv Reports
https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=10948891336d
- [BlueZ,3/3] btdev: Fix BIG Create Sync
https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=d1871fc93522
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html