Skip to content

Commit

Permalink
Bluetooth: Audio: Upgrade from experimental to unstable
Browse files Browse the repository at this point in the history
This commit upgrades the LE audio API and implementation
from experimental to unstable.

LE Audio have existing for quite a few years in Zephyr
and is not going anywhere, but at the same time it still
has significant effort remaining before it can be
considered stable.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
  • Loading branch information
Thalley authored and carlescufi committed May 17, 2024
1 parent a2ebe49 commit c547079
Show file tree
Hide file tree
Showing 26 changed files with 58 additions and 83 deletions.
4 changes: 3 additions & 1 deletion include/zephyr/bluetooth/audio/aics.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
*
* @defgroup bt_gatt_aics Audio Input Control Service (AICS)
*
* @since 2.6
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
Expand All @@ -23,7 +26,6 @@
* automatically handle any changes to that. If out of date, the client implementation will
* autonomously read the change counter value when executing a write request.
*
* [Experimental] Users should note that the APIs can change as a part of ongoing development.
*/

#include <zephyr/bluetooth/bluetooth.h>
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/cap.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
*
* @defgroup bt_cap Common Audio Profile (CAP)
*
* @since 3.2
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/

#include <stdint.h>
Expand Down
5 changes: 3 additions & 2 deletions include/zephyr/bluetooth/audio/csip.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,11 @@
*
* @defgroup bt_gatt_csip Coordinated Set Identification Profile (CSIP)
*
* @since 3.0
* @version 0.8.0
*
* @ingroup bluetooth
* @{
* *
* [Experimental] Users should note that the APIs can change as a part of ongoing development.
*/

#include <zephyr/bluetooth/conn.h>
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/has.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@
*
* @defgroup bt_has Hearing Access Service (HAS)
*
* @since 3.1
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* The Hearing Access Service is used to identify a hearing aid and optionally
* to control hearing aid presets.
*
* [Experimental] Users should note that the APIs can change as a part of
* ongoing development.
*/

#include <sys/types.h>
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/mcc.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
*
* @defgroup bt_gatt_mcc Media Control Client (MCC)
*
* @since 3.0
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/

/*
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/mcs.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@
*
* @defgroup bt_mcs Media Control Service (MCS)
*
* @since 3.0
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*
* Definitions and types related to the Media Control Service and Media Control
* Profile specifications.
*/
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/media_proxy.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
*
* @defgroup bt_media_proxy Media Proxy
*
* @since 3.0
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
Expand All @@ -31,9 +34,6 @@
* application, or it may be a Media Control Service relaying requests
* from a remote Media Control Client. There may be either local or
* remote control, or both, or even multiple instances of each.
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/

#include <stdint.h>
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/micp.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
*
* @defgroup bt_gatt_micp Microphone Control Profile (MICP)
*
* @since 2.7
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/

#include <stdint.h>
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/pbp.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
*
* @defgroup bt_pbp Public Broadcast Profile (PBP)
*
* @since 3.5
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/

#include <zephyr/sys/util.h>
Expand Down
6 changes: 3 additions & 3 deletions include/zephyr/bluetooth/audio/vcp.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
*
* @defgroup bt_gatt_vcp Volume Control Profile (VCP)
*
* @since 2.7
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
* [Experimental] Users should note that the APIs can change
* as a part of ongoing development.
*/

#include <stdint.h>
Expand Down
5 changes: 3 additions & 2 deletions include/zephyr/bluetooth/audio/vocs.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
*
* @defgroup bt_gatt_vocs Volume Offset Control Service (VOCS)
*
* @since 2.6
* @version 0.8.0
*
* @ingroup bluetooth
* @{
*
Expand All @@ -22,8 +25,6 @@
* Note that the API abstracts away the change counter in the volume offset control state and will
* automatically handle any changes to that. If out of date, the client implementation will
* autonomously read the change counter value when executing a write request.
*
* [Experimental] Users should note that the APIs can change as a part of ongoing development.
*/

#include <stdint.h>
Expand Down
3 changes: 1 addition & 2 deletions subsys/bluetooth/audio/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@
#

menuconfig BT_AUDIO
bool "Bluetooth Audio support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Bluetooth Audio support"
help
This option enables Bluetooth Audio support. The specific
features that are available may depend on other features
Expand Down
6 changes: 2 additions & 4 deletions subsys/bluetooth/audio/Kconfig.aics
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
##################### Audio Input Control Service #####################

config BT_AICS_MAX_INSTANCE_COUNT
int "Audio Input Control Service max instance count [EXPERIMENTAL]"
int "Audio Input Control Service max instance count"
default 0
range 0 15
help
Expand All @@ -19,7 +19,6 @@ config BT_AICS_MAX_INSTANCE_COUNT
config BT_AICS
bool # hidden
default y if BT_AICS_MAX_INSTANCE_COUNT > 0
select EXPERIMENTAL
select BT_GATT_DYNAMIC_DB
help
This hidden option enables support for Audio Input Control Service.
Expand All @@ -38,7 +37,7 @@ endif # BT_AICS
##################### Audio Input Control Service Client #####################

config BT_AICS_CLIENT_MAX_INSTANCE_COUNT
int "Audio Input Control Service client max instance count [EXPERIMENTAL]"
int "Audio Input Control Service client max instance count"
default 0
range 0 15
help
Expand All @@ -48,6 +47,5 @@ config BT_AICS_CLIENT_MAX_INSTANCE_COUNT
config BT_AICS_CLIENT
bool # hidden
default y if BT_AICS_CLIENT_MAX_INSTANCE_COUNT > 0
select EXPERIMENTAL
help
This hidden option enables support for Audio Input Control Service.
18 changes: 6 additions & 12 deletions subsys/bluetooth/audio/Kconfig.bap
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@ config BT_BAP_UNICAST
select BT_ISO_UNICAST

config BT_BAP_UNICAST_SERVER
bool "Bluetooth Unicast Audio Server Support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Bluetooth Unicast Audio Server Support"
select BT_BAP_UNICAST
select BT_GATT_DYNAMIC_DB
select BT_GATT_CACHING
Expand All @@ -27,8 +26,7 @@ config BT_BAP_UNICAST_SERVER
using Isochronous channels.

config BT_BAP_UNICAST_CLIENT
bool "Bluetooth Unicast Audio Client Support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Bluetooth Unicast Audio Client Support"
select BT_BAP_UNICAST
select BT_ISO_CENTRAL
select BT_CENTRAL
Expand Down Expand Up @@ -127,8 +125,7 @@ config BT_BAP_UNICAST_CLIENT_ASE_SRC
endif # BT_BAP_UNICAST_CLIENT

config BT_BAP_BROADCAST_SOURCE
bool "Bluetooth Broadcast Source Audio Support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Bluetooth Broadcast Source Audio Support"
select BT_ISO_BROADCASTER
select BT_AUDIO_TX
help
Expand Down Expand Up @@ -167,8 +164,7 @@ config BT_BAP_BROADCAST_SRC_STREAM_COUNT
endif # BT_BAP_BROADCAST_SOURCE

config BT_BAP_BROADCAST_SINK
bool "Bluetooth Broadcast Sink Audio Support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Bluetooth Broadcast Sink Audio Support"
select BT_ISO_SYNC_RECEIVER
select BT_AUDIO_RX
select BT_PAC_SNK
Expand Down Expand Up @@ -211,8 +207,7 @@ config BT_BAP_BROADCAST_SNK_STREAM_COUNT
endif # BT_BAP_BROADCAST_SINK

config BT_BAP_SCAN_DELEGATOR
bool "Basic Audio Profile Scan Delegator role support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Basic Audio Profile Scan Delegator role support"
select BT_OBSERVER
select BT_EXT_ADV
select BT_PER_ADV_SYNC
Expand Down Expand Up @@ -244,8 +239,7 @@ config BT_BAP_SCAN_DELEGATOR_BUF_TIMEOUT
endif # BT_BAP_SCAN_DELEGATOR

config BT_BAP_BROADCAST_ASSISTANT
bool "Basic Audio Profile Broadcast Assistant role support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Basic Audio Profile Broadcast Assistant role support"
select BT_OBSERVER
select BT_EXT_ADV
select BT_PER_ADV_SYNC
Expand Down
9 changes: 3 additions & 6 deletions subsys/bluetooth/audio/Kconfig.cap
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,9 @@ config BT_CAP
def_bool BT_CAP_ACCEPTOR || BT_CAP_INITIATOR

config BT_CAP_ACCEPTOR
bool "Common Audio Profile Acceptor Role Support [EXPERIMENTAL]"
bool "Common Audio Profile Acceptor Role Support"
depends on BT_BAP_UNICAST_SERVER || (BT_BAP_BROADCAST_SINK && BT_BAP_SCAN_DELEGATOR)
depends on BT_AUDIO_CODEC_CFG_MAX_METADATA_SIZE >= 4
select EXPERIMENTAL
help
Enabling this will enable the CAP Acceptor role. This instantiates the
common audio service (CAS).
Expand All @@ -32,22 +31,20 @@ config BT_CAP_INITIATOR_UNICAST
def_bool BT_CAP_INITIATOR && BT_BAP_UNICAST_CLIENT

config BT_CAP_INITIATOR
bool "Common Audio Profile Initiator Role Support [EXPERIMENTAL]"
bool "Common Audio Profile Initiator Role Support"
depends on (BT_BAP_UNICAST_CLIENT && BT_CSIP_SET_COORDINATOR) || BT_BAP_BROADCAST_SOURCE
depends on BT_AUDIO_CODEC_CFG_MAX_METADATA_SIZE >= 4
select EXPERIMENTAL
help
Enabling this will enable the CAP Initiator role.


config BT_CAP_COMMANDER
bool "Common Audio Profile Initiator Role Support [EXPERIMENTAL]"
bool "Common Audio Profile Initiator Role Support"
depends on (BT_BAP_BROADCAST_ASSISTANT && BT_BAP_SCAN_DELEGATOR && BT_CSIP_SET_COORDINATOR) || \
(BT_BAP_SCAN_DELEGATOR && BT_CSIP_SET_COORDINATOR) || \
(BT_VCP_VOL_CTLR && BT_CSIP_SET_COORDINATOR) || \
(BT_MICP_MIC_CTLR && BT_CSIP_SET_COORDINATOR) || \
BT_TBS_CLIENT || \
BT_MCC
select EXPERIMENTAL
help
Enabling this will enable the CAP Initiator role.
6 changes: 2 additions & 4 deletions subsys/bluetooth/audio/Kconfig.csip
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@
#################### Coordinated Set Identification Service ####################

config BT_CSIP_SET_MEMBER
bool "Coordinated Set Identification Profile Set Member support [EXPERIMENTAL]"
bool "Coordinated Set Identification Profile Set Member support"
imply BT_EXT_ADV if BT_PRIVACY
select EXPERIMENTAL
help
This option enables support for Coordinated Set Identification
Profile Set Member role and the Coordinated Set Identification
Expand Down Expand Up @@ -57,10 +56,9 @@ endif # BT_CSIP_SET_MEMBER
#################### Coordinated Set Identification Client ####################

config BT_CSIP_SET_COORDINATOR
bool "Coordinated Set Identification Profile Set Coordinator Support [EXPERIMENTAL]"
bool "Coordinated Set Identification Profile Set Coordinator Support"
select BT_GATT_CLIENT
select BT_GATT_AUTO_DISCOVER_CCC
select EXPERIMENTAL
help
This option enables support for Coordinated Set Identification
Profile Set Coordinator.
Expand Down
3 changes: 1 addition & 2 deletions subsys/bluetooth/audio/Kconfig.gmap
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,8 @@ config BT_GMAP_BGR_SUPPORTED
def_bool BT_CAP_ACCEPTOR && BT_BAP_BROADCAST_SINK && BT_VCP_VOL_REND

config BT_GMAP
bool "Gaming Audio Profile [EXPERIMENTAL]"
bool "Gaming Audio Profile"
depends on BT_CAP_ACCEPTOR || BT_CAP_INITIATOR
select EXPERIMENTAL
help
Enabling this will enable GMAP.

Expand Down
6 changes: 2 additions & 4 deletions subsys/bluetooth/audio/Kconfig.has
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@
# SPDX-License-Identifier: Apache-2.0

menuconfig BT_HAS
bool "Hearing Access Service support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Hearing Access Service support"
select UTF8
select BT_GATT_DYNAMIC_DB
depends on BT_BAP_UNICAST_SERVER
Expand Down Expand Up @@ -56,8 +55,7 @@ endif # BT_HAS_PRESET_SUPPORT
endif # BT_HAS

config BT_HAS_CLIENT
bool "Hearing Access Service Client support [EXPERIMENTAL]"
select EXPERIMENTAL
bool "Hearing Access Service Client support"
select BT_GATT_CLIENT
select BT_GATT_AUTO_DISCOVER_CCC
select BT_GATT_AUTO_UPDATE_MTU
Expand Down
2 changes: 0 additions & 2 deletions subsys/bluetooth/audio/Kconfig.mcs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ config BT_MCS
depends on MCTL_LOCAL_PLAYER_REMOTE_CONTROL
depends on UTF8
select BT_CCID
select EXPERIMENTAL
select BT_GATT_DYNAMIC_DB
help
This option enables support for the Media Control Service.
Expand All @@ -24,7 +23,6 @@ config BT_MCC
bool "Media Control Client Support"
select BT_GATT_CLIENT
select BT_GATT_AUTO_DISCOVER_CCC
select EXPERIMENTAL
help
This option enables support for the Media Control Client.

Expand Down
1 change: 0 additions & 1 deletion subsys/bluetooth/audio/Kconfig.mctl
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

config MCTL
bool "Support for media player control"
select EXPERIMENTAL
help
Enables support for control of local and remote media players
To enable support for control of a local media player, support for
Expand Down

0 comments on commit c547079

Please sign in to comment.