diff options
author | Szymon Czapracki <szymon.czapracki@codecoup.pl> | 2020-01-08 12:47:51 +0100 |
---|---|---|
committer | Szymon Janc <szymon.janc@codecoup.pl> | 2020-01-09 11:36:05 +0100 |
commit | ec7781244241d71448eb93b3685c36f9c7d7d06e (patch) | |
tree | f2ef0cefd8e4fc4037f433c687d7686e237f5c84 | |
parent | e0eaaa45d879d3a15df180ec6b788be6025643e7 (diff) | |
download | bluez-ec7781244241d71448eb93b3685c36f9c7d7d06e.tar.gz |
monitor: Decode LE Set Default Periodic Adv Sync Transfer Params. command
< HCI Command: LE Set Default Periodic Advertisng Sync Transfer Parameters (0x08|0x005d) plen 6
Mode: Enabled with report events disabled (0x01)
Skip: 0x00
Sync timeout: 0 msec (0x0000)
Sync CTE type: 0x0000
> HCI Event: Command Status (0x0f) plen 4
LE Set Default Periodic Advertisng Sync Transfer Parameters (0x08|0x005d) ncmd 1
Status: Unknown HCI Command (0x01)
-rw-r--r-- | monitor/bt.h | 8 | ||||
-rw-r--r-- | monitor/packet.c | 17 |
2 files changed, 25 insertions, 0 deletions
diff --git a/monitor/bt.h b/monitor/bt.h index 2ec2ea0a7..1859dfb21 100644 --- a/monitor/bt.h +++ b/monitor/bt.h @@ -2490,6 +2490,14 @@ struct bt_hci_cmd_periodic_adv_sync_trans_params { uint8_t cte_type; } __attribute__ ((packed)); +#define BT_HCI_CMD_DEFAULT_PERIODIC_ADV_SYNC_TRANS_PARAMS 0x205d +struct bt_hci_cmd_default_periodic_adv_sync_trans_params { + uint8_t mode; + uint16_t skip; + uint16_t sync_timeout; + uint8_t cte_type; +} __attribute__ ((packed)); + #define BT_HCI_EVT_INQUIRY_COMPLETE 0x01 struct bt_hci_evt_inquiry_complete { uint8_t status; diff --git a/monitor/packet.c b/monitor/packet.c index a389cb868..5305fde68 100644 --- a/monitor/packet.c +++ b/monitor/packet.c @@ -7653,6 +7653,19 @@ static void le_periodic_adv_sync_trans_params(const void *data, uint8_t size) print_create_sync_cte_type(cmd->cte_type); } +static void le_set_default_periodic_adv_sync_trans_params(const void *data, + uint8_t size) +{ + const struct bt_hci_cmd_default_periodic_adv_sync_trans_params *cmd = data; + + print_sync_mode(cmd->mode); + print_field("Skip: 0x%2.2x", cmd->skip); + print_field("Sync timeout: %d msec (0x%4.4x)", + le16_to_cpu(cmd->sync_timeout) * 10, + le16_to_cpu(cmd->sync_timeout)); + print_create_sync_cte_type(cmd->cte_type); +} + struct opcode_data { uint16_t opcode; int bit; @@ -8458,6 +8471,10 @@ static const struct opcode_data opcode_table[] = { { 0x205c, 328, "LE Periodic Advertising Sync Transfer Parameters", le_periodic_adv_sync_trans_params, 8, true, status_handle_rsp, 3, true}, + { 0x205d, 329, "LE Set Default Periodic Advertisng Sync Transfer " + "Parameters", + le_set_default_periodic_adv_sync_trans_params, + 6, true, status_rsp, 1, true}, { } }; |