1 /* btp_csip.h - Bluetooth tester headers */
2 
3 /*
4  * Copyright (c) 2023 Codecoup
5  *
6  * SPDX-License-Identifier: Apache-2.0
7  */
8 #include <zephyr/bluetooth/audio/csip.h>
9 
10 /* CSIP commands */
11 #define BTP_CSIP_READ_SUPPORTED_COMMANDS	0x01
12 struct btp_csip_read_supported_commands_rp {
13 	uint8_t data[0];
14 } __packed;
15 
16 #define BTP_CSIP_DISCOVER			0x02
17 struct btp_csip_discover_cmd {
18 	bt_addr_le_t address;
19 } __packed;
20 
21 #define BTP_CSIP_START_ORDERED_ACCESS		0x03
22 struct btp_csip_start_ordered_access_cmd {
23 	uint8_t flags;
24 } __packed;
25 
26 #define BTP_CSIP_SET_COORDINATOR_LOCK		0x04
27 struct btp_csip_set_coordinator_lock_cmd {
28 	uint8_t addr_cnt;
29 	bt_addr_le_t addr[];
30 } __packed;
31 
32 #define BTP_CSIP_SET_COORDINATOR_RELEASE	0x05
33 struct btp_csip_set_coordinator_release_cmd {
34 	uint8_t addr_cnt;
35 	bt_addr_le_t addr[];
36 } __packed;
37 
38 /* CSIP Events */
39 #define BTP_CSIP_DISCOVERED_EV			0x80
40 struct btp_csip_discovered_ev {
41 	bt_addr_le_t address;
42 	uint8_t status;
43 	uint16_t sirk_handle;
44 	uint16_t size_handle;
45 	uint16_t lock_handle;
46 	uint16_t rank_handle;
47 } __packed;
48 
49 #define BTP_CSIP_SIRK_EV			0x81
50 struct btp_csip_sirk_ev {
51 	bt_addr_le_t address;
52 	uint8_t sirk[BT_CSIP_SIRK_SIZE];
53 } __packed;
54 
55 #define BTP_CSIP_LOCK_EV			0x82
56 struct btp_csip_lock_ev {
57 	uint8_t status;
58 } __packed;
59