1 /* csip.c - CAP initiator specific CSIP mocks */
2 
3 /*
4  * Copyright (c) 2023-2024 Nordic Semiconductor ASA
5  *
6  * SPDX-License-Identifier: Apache-2.0
7  */
8 #include <stdbool.h>
9 #include <stddef.h>
10 #include <stdint.h>
11 
12 #include <stdbool.h>
13 #include <stddef.h>
14 #include <stdint.h>
15 
16 #include <zephyr/bluetooth/audio/csip.h>
17 #include <zephyr/bluetooth/conn.h>
18 
19 static struct bt_csip_set_coordinator_cb *csip_cb;
20 
21 struct bt_csip_set_coordinator_svc_inst {
22 	struct bt_conn *conn;
23 	struct bt_csip_set_coordinator_set_info *set_info;
24 } svc_inst;
25 
26 static struct bt_csip_set_coordinator_set_member member = {
27 	.insts = {
28 		{
29 			.info = {
30 				.set_size = 2U,
31 				.rank = 1U,
32 				.lockable = false,
33 			},
34 			.svc_inst = &svc_inst,
35 		},
36 	},
37 };
38 
39 struct bt_csip_set_coordinator_csis_inst *
bt_csip_set_coordinator_csis_inst_by_handle(struct bt_conn * conn,uint16_t start_handle)40 bt_csip_set_coordinator_csis_inst_by_handle(struct bt_conn *conn, uint16_t start_handle)
41 {
42 	return &member.insts[0];
43 }
44 
bt_csip_set_coordinator_register_cb(struct bt_csip_set_coordinator_cb * cb)45 int bt_csip_set_coordinator_register_cb(struct bt_csip_set_coordinator_cb *cb)
46 {
47 	csip_cb = cb;
48 
49 	return 0;
50 }
51 
bt_csip_set_coordinator_discover(struct bt_conn * conn)52 int bt_csip_set_coordinator_discover(struct bt_conn *conn)
53 {
54 	if (csip_cb != NULL) {
55 		svc_inst.conn = conn;
56 		svc_inst.set_info = &member.insts[0].info;
57 		csip_cb->discover(conn, &member, 0, 1);
58 	}
59 
60 	return 0;
61 }
62 
63 struct bt_csip_set_coordinator_set_member *
bt_csip_set_coordinator_set_member_by_conn(const struct bt_conn * conn)64 bt_csip_set_coordinator_set_member_by_conn(const struct bt_conn *conn)
65 {
66 	if (conn == NULL) {
67 		return NULL;
68 	}
69 
70 	return &member;
71 }
72 
mock_bt_csip_init(void)73 void mock_bt_csip_init(void)
74 {
75 }
76 
mock_bt_csip_cleanup(void)77 void mock_bt_csip_cleanup(void)
78 {
79 	csip_cb = NULL;
80 }
81