1 /*
2  * Copyright 2023 NXP
3  * Copyright (c) 2024 Nordic Semiconductor ASA
4  *
5  * SPDX-License-Identifier: Apache-2.0
6  */
7 
8 #include <stdint.h>
9 
10 #include <zephyr/bluetooth/conn.h>
11 #include <zephyr/types.h>
12 
13 /**
14  * @brief Initialize the MCP Server role
15  *
16  * @return 0 if success, errno on failure.
17  */
18 int mcp_server_init(void);
19 
20 /**
21  * @brief Initialize the CCP Server role
22  *
23  * @return 0 if success, errno on failure.
24  */
25 int ccp_server_init(void);
26 
27 /**
28  * @brief Initialize the VCP Volume Controller role
29  *
30  * @return 0 if success, errno on failure.
31  */
32 int vcp_vol_ctlr_init(void);
33 
34 /**
35  * @brief Send the Mute command to the VCP Volume Renderer
36  *
37  * @return 0 if success, errno on failure.
38  */
39 int vcp_vol_ctlr_mute(void);
40 
41 /**
42  * @brief Send the Unmute command to the VCP Volume Renderer
43  *
44  * @return 0 if success, errno on failure.
45  */
46 int vcp_vol_ctlr_unmute(void);
47 
48 /**
49  * @brief Set the volume for the VCP Volume Renderer
50  *
51  * @return 0 if success, errno on failure.
52  */
53 int vcp_vol_ctlr_set_vol(uint8_t volume);
54 
55 /**
56  * @brief Initialize the CAP Initiator role
57  *
58  * @return 0 if success, errno on failure.
59  */
60 int cap_initiator_init(void);
61 
62 /**
63  * @brief Setup streams for CAP Initiator
64  *
65  * @return 0 if success, errno on failure.
66  */
67 int cap_initiator_setup(struct bt_conn *conn);
68