blob: cc9c093d0be46c89d992a93ca587df2bc2382869 [file] [log] [blame]
# Bluetooth Audio - Call control configuration options
#
# Copyright (c) 2020 Bose Corporation
#
# SPDX-License-Identifier: Apache-2.0
#
if BT_AUDIO
##################### Telephone Bearer Service #####################
config BT_TBS
bool "Telephone Bearer Service Support"
select BT_CCID
help
This option enables support for Telephone Bearer Service.
if BT_TBS
# TODO: BT_GTBS is mandatory if you support the call control server role.
# Need to enforce this.
config BT_GTBS
bool "Generic Telephone Bearer Service Support"
default y
help
This option enables support for Generic Telephone Bearer Service.
config BT_TBS_PROVIDER_NAME
string "Telephone Bearer Service Provider Name"
default "Unknown"
help
Sets the name of the service provider for the bearer.
config BT_TBS_UCI
string "Telephone Bearer Service Uniform Caller Identifier (UCI)"
default "un000"
help
Sets the UCI of the bearer. See
https://www.bluetooth.com/specifications/assigned-numbers/uniform-caller-identifiers/
for a table of valid UCIs.
config BT_TBS_TECHNOLOGY
int "Telephone Bearer Service Technology"
range 1 10
help
Sets the technology used for the bearer, e.g. GSM, LTE and 5G.
1 : 3G
2 : 4G
3 : LTE
4 : Wi-Fi
5 : 5G
6 : GSM
7 : CDMA
8 : 2G
9 : WCDMA
10: IP
config BT_TBS_URI_SCHEMES_LIST
string "Telephone Bearer Service URI schemes Supported List"
default "tel,skype"
help
Sets a list of URI schemes that are supported by the bearer,
e.g. "tel" or "skype".
Multiple values shall be comma (,) separated, e.g. "tel,skype".
config BT_TBS_SIGNAL_STRENGTH_INTERVAL
int "Telephone Bearer Service Signal Strength Reporting Interval"
default 0
range 0 255
help
Sets the interval of reporting the signal strength in seconds.
If the value is 0, the signal will not be reported.
config BT_TBS_STATUS_FLAGS
int "Telephone Bearer Service Features and Status value"
default 0
range 0 3
help
Bitfield to set feature and status flags.
Bit 0: In-band ringtone
Bit 1: Silent mode
Bits 2-15: Reserved for future use
config BT_TBS_SUPPORTED_FEATURES
int "Telephone Bearer Service Supported Features"
default 1
range 0 3
help
Bitfield to set supported features of the bearer.
Bit 0: Local Hold and Retrieve
Bit 1: Join calls within Telephone Bearer Service
config BT_TBS_MAX_CALLS
int "Telephone Bearer Service Maximum Number Of Calls Supported"
default 3
range 1 16
help
Sets the maximum number of calls the service supports per bearer.
config BT_TBS_BEARER_COUNT
int "How many bearer instances the device instantiates"
default 1
range 1 255
help
Sets the number of TBS instances that are instantiated
config BT_TBS_SERVICE_COUNT
int "Number of instantiated bearer service instances"
default BT_TBS_BEARER_COUNT
range 0 BT_TBS_BEARER_COUNT if BT_GTBS
range BT_TBS_BEARER_COUNT BT_TBS_BEARER_COUNT
help
Sets the number of TBS service instances that are instantiated
config BT_TBS_MAX_SCHEME_LIST_LENGTH
int "The maximum length of the URI scheme list"
default 30
range 0 512
help
Sets the maximum length of the URI scheme list. If BT_GTBS is enabled,
then the maximum length should be maximum 512 / BT_TBS_BEARER_COUNT.
config BT_TBS_AUTHORIZATION
bool "TBS authorization requirement"
help
If set to true, then any writable characteristics will require
authorization per connection.
############# DEBUG #############
config BT_DEBUG_TBS
bool "Telephone Bearer Service debug"
select DEPRECATED
help
Use this option to enable Telephone Bearer Service debug logs for the
Bluetooth Audio functionality.
module = BT_TBS
legacy-debug-sym = BT_DEBUG_TBS
module-str = "Telephone Bearer Service"
source "subsys/bluetooth/common/Kconfig.template.log_config_bt"
endif # BT_TBS
##################### Call Control Client #####################
config BT_TBS_CLIENT
bool "Telephone Bearer Service client"
select BT_GATT_CLIENT
select BT_GATT_AUTO_DISCOVER_CCC
help
This option enables support for Telephone Bearer Service client.
if BT_TBS_CLIENT
config BT_TBS_CLIENT_GTBS
bool "Telephone Bearer Service client GTBS support"
default y
help
This option enables support for the generic TBS for the
Call Control client.
config BT_TBS_CLIENT_MAX_CALLS
int "Maximum Number Of Calls Supported"
default 1
help
Sets the maximum number of calls the client supports per TBS instance.
config BT_TBS_CLIENT_MAX_TBS_INSTANCES
int "Maximum number of TBS instances to setup"
default 1
range 0 3 if BT_TBS_CLIENT_GTBS
range 1 3
help
Sets the maximum number of Telephone Bearer Service (TBS)
instances to setup and use.
config BT_TBS_CLIENT_MINIMAL
bool "Minimal TBS Client without optional procedures"
default n
help
This option disables all optional procedures in the TBS Client.
config BT_TBS_CLIENT_BEARER_PROVIDER_NAME
bool "Support reading Bearer Provider Name"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer Provider Name.
config BT_TBS_CLIENT_BEARER_UCI
bool "Support reading Bearer UCI"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer UCI.
config BT_TBS_CLIENT_BEARER_TECHNOLOGY
bool "Support reading Bearer Technology"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer Technology.
config BT_TBS_CLIENT_BEARER_URI_SCHEMES_SUPPORTED_LIST
bool "Support reading Bearer URI Schemes Supported List"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer URI Schemes Supported
List.
config BT_TBS_CLIENT_BEARER_SIGNAL_STRENGTH
bool "Support reading Bearer Signal Strength"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer Signal Strength.
config BT_TBS_CLIENT_READ_BEARER_SIGNAL_INTERVAL
bool "Support reading Bearer Signal Strength Reporting Interval"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer Signal Strength
Reporting Interval.
config BT_TBS_CLIENT_SET_BEARER_SIGNAL_INTERVAL
bool "Support setting Bearer Signal Strength Reporting Interval"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for setting Bearer Signal Strength
Reporting Interval.
config BT_TBS_CLIENT_BEARER_LIST_CURRENT_CALLS
bool "Support reading Bearer List Current Calls"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Bearer List Current Calls.
config BT_TBS_CLIENT_CCID
bool "Support reading Content Control ID"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Content Control ID.
config BT_TBS_CLIENT_INCOMING_URI
bool "Support reading Incoming Call Target Bearer URI"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Incoming Call Target Bearer
URI.
config BT_TBS_CLIENT_STATUS_FLAGS
bool "Support reading Status Flags"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Status Flags.
config BT_TBS_CLIENT_CP_PROCEDURES
def_bool y
depends on (BT_TBS_CLIENT_ACCEPT_CALL || \
BT_TBS_CLIENT_TERMINATE_CALL || \
BT_TBS_CLIENT_HOLD_CALL || \
BT_TBS_CLIENT_RETRIEVE_CALL || \
BT_TBS_CLIENT_ORIGINATE_CALL || \
BT_TBS_CLIENT_JOIN_CALLS)
help
This hidden option indicates that there are at least one control
point procedure available.
When this option is disabled it indicates that the control point can
be optimized away.
config BT_TBS_CLIENT_ACCEPT_CALL
bool "Support Accept Call"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for answering an incoming call.
config BT_TBS_CLIENT_TERMINATE_CALL
bool "Support Terminate Call"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for terminating a call.
config BT_TBS_CLIENT_HOLD_CALL
bool "Support Hold Call"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for putting a call on hold.
config BT_TBS_CLIENT_RETRIEVE_CALL
bool "Support Retrieve Call"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for retrieving a call on hold.
config BT_TBS_CLIENT_ORIGINATE_CALL
bool "Support Originate Call"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for originating a call.
config BT_TBS_CLIENT_JOIN_CALLS
bool "Support Join Calls"
depends on BT_TBS_CLIENT_MAX_CALLS > 1
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for joining calls.
config BT_TBS_CLIENT_OPTIONAL_OPCODES
bool "Support reading Optional Opcodes"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Optional Opcodes.
config BT_TBS_CLIENT_INCOMING_CALL
bool "Support reading Incoming Call"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Incoming Call.
config BT_TBS_CLIENT_CALL_FRIENDLY_NAME
bool "Support reading Call Friendly Name"
default !BT_TBS_CLIENT_MINIMAL
help
This option enables support for reading Call Friendly Name.
############# DEBUG #############
config BT_DEBUG_TBS_CLIENT
bool "Telephone Bearer Service client debug"
select DEPRECATED
help
Use this option to enable Telephone Bearer Service client debug logs
for the Bluetooth Audio functionality.
module = BT_TBS_CLIENT
legacy-debug-sym = BT_DEBUG_TBS_CLIENT
module-str = "Telephone Bearer Service client"
source "subsys/bluetooth/common/Kconfig.template.log_config_bt"
endif # BT_TBS_CLIENT
if BT_TBS || BT_TBS_CLIENT
config BT_TBS_MAX_URI_LENGTH
int "The maximum length of the call URI supported"
default 30
range 4 253
help
Sets the maximum length of the call URI supported. Note that if this
value is lower than a call URI, the call request will be rejected.
config BT_TBS_MAX_PROVIDER_NAME_LENGTH
int "The maximum length of the bearer provider name"
default 30
range 0 512
help
Sets the maximum length of the bearer provider name.
endif # BT_TBS || BT_TBS_CLIENT
endif # BT_AUDIO