diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2018-06-16 22:53:04 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2018-06-16 22:53:04 +0200 |
commit | 56618fa4e243da17ea9b3020b888697832f15a58 (patch) | |
tree | 3c3916e1e52e424d5abba6bb7badc2c2d6b5f84f /monitor/broadcom.c | |
parent | 3a28583216c6f9bd45b8850f6c1fa4004e3d2bb4 (diff) | |
download | bluez-56618fa4e243da17ea9b3020b888697832f15a58.tar.gz |
monitor: Add support for decoding Broadcom Enable WBS command
Diffstat (limited to 'monitor/broadcom.c')
-rw-r--r-- | monitor/broadcom.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/monitor/broadcom.c b/monitor/broadcom.c index 475a2489f..fb96609eb 100644 --- a/monitor/broadcom.c +++ b/monitor/broadcom.c @@ -529,6 +529,44 @@ static void read_verbose_version_info_rsp(const void *data, uint8_t size) print_field("Build number: %u (0x%4.4x)", build_num, build_num); } +static void enable_wbs_cmd(const void *data, uint8_t size) +{ + uint8_t mode = get_u8(data); + uint16_t codec = get_le16(data + 1); + const char *str; + + switch (mode) { + case 0x00: + str = "Disable WBS"; + break; + case 0x01: + str = "Enable WBS"; + break; + default: + str = "Reserved"; + break; + } + + print_field("Mode: %s (0x%2.2x)", str, mode); + + switch (codec) { + case 0x0000: + str = "None"; + break; + case 0x0001: + str = "CVSD"; + break; + case 0x0002: + str = "mSBC"; + break; + default: + str = "Reserved"; + break; + } + + print_field("Codec: %s (0x%4.4x)", str, codec); +} + static const struct vendor_ocf vendor_ocf_table[] = { { 0x001, "Write BD ADDR", write_bd_addr_cmd, 6, true, @@ -588,6 +626,9 @@ static const struct vendor_ocf vendor_ocf_table[] = { { 0x079, "Read Verbose Config Version Info", null_cmd, 0, true, read_verbose_version_info_rsp, 7, true }, + { 0x07e, "Enable WBS", + enable_wbs_cmd, 3, true, + status_rsp, 1, true }, { } }; |