# Copyright (c) 2023 Demant A/S
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

mainmenu "Bluetooth: Broadcast Audio Source"

choice BAP_LC3_PRESET
	prompt "The BAP LC3 Preset to be used"
	default BAP_BROADCAST_16_2_1

config BAP_BROADCAST_16_2_1
	bool "BAP_LC3_BROADCAST_PRESET_16_2_1 preset"
	help
	  Using the BAP_LC3_BROADCAST_PRESET_16_2_1 preset.

config BAP_BROADCAST_24_2_1
	bool "BAP_LC3_BROADCAST_PRESET_24_2_1 preset"
	help
	  Using the BAP_LC3_BROADCAST_PRESET_24_2_1 preset.

endchoice

config ENABLE_LC3
	bool "Enable the LC3 codec"
	# By default let's enable it in the platforms we know are capable of supporting it
	default y
	depends on CPU_HAS_FPU && \
		(ARCH_POSIX || SOC_COMPATIBLE_NRF52X || SOC_COMPATIBLE_NRF5340_CPUAPP || SOC_MIMXRT1062)
	select LIBLC3
	select FPU

config ISO_PACKING_INTERLEAVED
	bool "Use interleaved packing"
	help
	  Use interleaved packing between BIS ISO stream subevents.

config USE_USB_AUDIO_INPUT
	bool "Use USB Audio as input"
	# By default, use the USB Audio path is disabled.
	default n
	depends on ENABLE_LC3
	select USB_DEVICE_STACK_NEXT
	select USBD_AUDIO2_CLASS
	select RING_BUFFER

config BROADCAST_CODE
	string "The broadcast code (if any) to use for encrypted broadcast"
	default ""
	help
	   Setting a non-empty string for this option will encrypt the broadcast using this
	   string as the broadcast code. The length of the string shall be between 1 and 16 octets.

config STATIC_BROADCAST_ID
	bool "Use static broadcast ID"
	default y
	help
	   Enabling this option will make the application use static broadcast ID, as opposed to a
	   randomly generated one.

config BROADCAST_ID
	hex "The static broadcast ID to use"
	range 0x000000 0xFFFFFF
	depends on STATIC_BROADCAST_ID
	help
	   This is the 3-octet broadcast ID advertised if static broadcast IDs are enabled.

config BROADCAST_NAME
	string "Bluetooth broadcast name"
	default BT_DEVICE_NAME
	help
	   Bluetooth broadcast name. Can be used for scanning device that displays information on the
	   available broadcast sources. Name length range is 4 to 32.

# Source common USB sample options used to initialize new experimental USB device stack.
# The scope of these options is limited to USB samples in project tree,
# you cannot use them in your own application.
source "samples/subsys/usb/common/Kconfig.sample_usbd"

source "Kconfig.zephyr"
