1 /* btp_micp.h - Bluetooth tester headers */
2 
3 /*
4  * Copyright (c) 2023 Codecoup
5  *
6  * SPDX-License-Identifier: Apache-2.0
7  */
8 
9 /* MICP commands */
10 #define BTP_MICP_READ_SUPPORTED_COMMANDS	0x01
11 struct btp_micp_read_supported_commands_rp {
12 	uint8_t data[0];
13 } __packed;
14 
15 #define BTP_MICP_CTLR_DISCOVER			0x02
16 struct btp_micp_discover_cmd {
17 	bt_addr_le_t address;
18 } __packed;
19 
20 #define BTP_MICP_CTLR_MUTE_READ			0x03
21 struct btp_micp_mute_read_cmd {
22 	bt_addr_le_t address;
23 } __packed;
24 
25 #define BTP_MICP_CTLR_MUTE			0x04
26 struct btp_micp_mute_cmd {
27 	bt_addr_le_t address;
28 } __packed;
29 
30 /* MICP events */
31 #define BTP_MICP_DISCOVERED_EV			0x80
32 struct btp_micp_discovered_ev {
33 	bt_addr_le_t address;
34 	uint8_t att_status;
35 	uint16_t mute_handle;
36 	uint16_t state_handle;
37 	uint16_t gain_handle;
38 	uint16_t type_handle;
39 	uint16_t status_handle;
40 	uint16_t control_handle;
41 	uint16_t desc_handle;
42 } __packed;
43 
44 #define BTP_MICP_MUTE_STATE_EV			0x81
45 struct btp_micp_mute_state_ev {
46 	bt_addr_le_t address;
47 	uint8_t att_status;
48 	uint8_t mute;
49 } __packed;
50