1CONFIG_IPC_SERVICE=y 2CONFIG_MBOX=y 3 4CONFIG_ISR_STACK_SIZE=1024 5CONFIG_IDLE_STACK_SIZE=256 6CONFIG_MAIN_STACK_SIZE=512 7CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=512 8CONFIG_HEAP_MEM_POOL_SIZE=4096 9CONFIG_CBPRINTF_REDUCED_INTEGRAL=y 10 11CONFIG_ISR_TABLES_LOCAL_DECLARATION=y 12CONFIG_LTO=y 13 14CONFIG_BT=y 15CONFIG_BT_HCI_RAW=y 16 17# Workaround: Unable to allocate command buffer when using K_NO_WAIT since 18# Host number of completed commands does not follow normal flow control. 19CONFIG_BT_BUF_CMD_TX_COUNT=10 20 21CONFIG_BT_BUF_EVT_RX_COUNT=16 22 23CONFIG_BT_BUF_EVT_RX_SIZE=255 24CONFIG_BT_BUF_ACL_RX_SIZE=255 25CONFIG_BT_BUF_ACL_TX_SIZE=251 26CONFIG_BT_BUF_CMD_TX_SIZE=255 27 28# Host and Controller common dependencies 29CONFIG_BT_BROADCASTER=y 30CONFIG_BT_OBSERVER=y 31CONFIG_BT_EXT_ADV=y 32CONFIG_BT_PER_ADV=y 33CONFIG_BT_PER_ADV_SYNC=y 34CONFIG_BT_PER_ADV_SYNC_MAX=2 35CONFIG_BT_CENTRAL=y 36CONFIG_BT_PERIPHERAL=y 37CONFIG_BT_MAX_CONN=3 38 39# Broadcast and Connected ISO 40CONFIG_BT_ISO_BROADCASTER=y 41CONFIG_BT_ISO_SYNC_RECEIVER=y 42CONFIG_BT_ISO_CENTRAL=y 43CONFIG_BT_ISO_PERIPHERAL=y 44 45# ISO Streams 46CONFIG_BT_ISO_TX_MTU=310 47CONFIG_BT_ISO_RX_MTU=310 48CONFIG_BT_ISO_MAX_CHAN=4 49# In theory, CONFIG_BT_ISO_TX_BUF_COUNT=1, should be sufficient but this count 50# is used in the context of IPC which falls into a "Newton's Cradle" effect 51# where probably (CONFIG_BT_CTLR_ISO_TX_BUFFERS - CONFIG_BT_ISO_TX_BUF_COUNT) 52# buffers get throttled. Hence, always have the value equal or greater. 53CONFIG_BT_ISO_TX_BUF_COUNT=8 54CONFIG_BT_ISO_RX_BUF_COUNT=1 55 56# Controller 57CONFIG_BT_LL_SW_SPLIT=y 58CONFIG_BT_CTLR_ASSERT_HANDLER=y 59CONFIG_BT_CTLR_DTM_HCI=y 60 61# Rx ACL and Adv Reports 62CONFIG_BT_CTLR_RX_BUFFERS=9 63CONFIG_BT_CTLR_DATA_LENGTH_MAX=251 64 65# Coded PHY support 66CONFIG_BT_CTLR_PHY_CODED=y 67 68# Advertising Sets and Extended Scanning 69CONFIG_BT_CTLR_ADV_EXT=y 70CONFIG_BT_CTLR_ADV_SET=3 71CONFIG_BT_CTLR_ADV_DATA_LEN_MAX=191 72CONFIG_BT_CTLR_SCAN_DATA_LEN_MAX=1650 73 74CONFIG_BT_CTLR_ADVANCED_FEATURES=y 75CONFIG_BT_CTLR_ADV_AUX_SET=3 76CONFIG_BT_CTLR_ADV_AUX_PDU_BACK2BACK=y 77CONFIG_BT_CTLR_ADV_SYNC_SET=3 78CONFIG_BT_CTLR_ADV_SYNC_PDU_BACK2BACK=y 79CONFIG_BT_CTLR_ADV_DATA_BUF_MAX=6 80 81# Increase the below to receive interleaved advertising chains 82CONFIG_BT_CTLR_SCAN_AUX_SET=1 83# CONFIG_BT_CTLR_SCAN_AUX_USE_CHAINS=y 84# CONFIG_BT_CTLR_SCAN_AUX_CHAIN_COUNT=1 85 86CONFIG_BT_CTLR_ADV_RESERVE_MAX=n 87CONFIG_BT_CTLR_ADV_ISO_RESERVE_MAX=y 88CONFIG_BT_CTLR_SYNC_ISO_RESERVE_MAX=n 89CONFIG_BT_CTLR_CENTRAL_RESERVE_MAX=n 90CONFIG_BT_CTLR_PERIPHERAL_RESERVE_MAX=n 91CONFIG_BT_CTLR_PERIPHERAL_ISO_RESERVE_MAX=n 92CONFIG_BT_CTLR_EVENT_OVERHEAD_RESERVE_MAX=y 93CONFIG_BT_CTLR_SLOT_RESERVATION_UPDATE=n 94CONFIG_BT_CTLR_SCAN_UNRESERVED=y 95CONFIG_BT_TICKER_NEXT_SLOT_GET_MATCH=y 96CONFIG_BT_TICKER_EXT=y 97CONFIG_BT_TICKER_EXT_SLOT_WINDOW_YIELD=y 98 99# Control Procedure 100CONFIG_BT_CTLR_LLCP_LOCAL_PROC_CTX_BUF_NUM=6 101 102# ISO Broadcaster Controller 103CONFIG_BT_CTLR_ADV_EXT=y 104CONFIG_BT_CTLR_ADV_PERIODIC=y 105CONFIG_BT_CTLR_SYNC_TRANSFER_SENDER=y 106CONFIG_BT_CTLR_ADV_ISO=y 107CONFIG_BT_CTLR_ADV_ISO_SET=1 108CONFIG_BT_CTLR_ADV_ISO_STREAM_COUNT=2 109CONFIG_BT_CTLR_ADV_ISO_STREAM_MAX=2 110CONFIG_BT_CTLR_ADV_ISO_PDU_LEN_MAX=247 111 112# ISO Receive Controller 113CONFIG_BT_CTLR_ADV_EXT=y 114CONFIG_BT_CTLR_SYNC_PERIODIC=y 115CONFIG_BT_CTLR_SYNC_TRANSFER_RECEIVER=y 116CONFIG_BT_CTLR_SYNC_ISO=y 117CONFIG_BT_CTLR_SCAN_SYNC_ISO_SET=1 118CONFIG_BT_CTLR_SYNC_ISO_STREAM_COUNT=2 119CONFIG_BT_CTLR_SYNC_ISO_STREAM_MAX=2 120CONFIG_BT_CTLR_SYNC_ISO_PDU_LEN_MAX=251 121 122# ISO Connection Oriented 123CONFIG_BT_CTLR_CENTRAL_ISO=y 124CONFIG_BT_CTLR_PERIPHERAL_ISO=y 125CONFIG_BT_CTLR_CONN_ISO_GROUPS=1 126CONFIG_BT_CTLR_CONN_ISO_STREAMS=2 127CONFIG_BT_CTLR_CONN_ISO_STREAMS_PER_GROUP=2 128CONFIG_BT_CTLR_CONN_ISO_SDU_LEN_MAX=247 129CONFIG_BT_CTLR_CONN_ISO_PDU_LEN_MAX=251 130CONFIG_BT_CTLR_CONN_ISO_LOW_LATENCY_POLICY=y 131 132# ISO Transmissions 133CONFIG_BT_CTLR_ISOAL_SOURCES=2 134CONFIG_BT_CTLR_ISO_TX_BUFFERS=8 135CONFIG_BT_CTLR_ISO_TX_BUFFER_SIZE=255 136 137# ISO Receptions 138CONFIG_BT_CTLR_ISOAL_SINKS=2 139CONFIG_BT_CTLR_ISO_RX_BUFFERS=8 140 141# Tx Power Dynamic Control 142CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y 143 144# Ignore HCI ISO data Tx sequence numbers 145# CONFIG_BT_CTLR_ISOAL_PSN_IGNORE=y 146 147# The hci_ipc image has a quite high RAM usage so we need to carefully 148# tweak Mbed TLS parameters in order to build successfully: 149# - use CSPRNG source as random source for PSA. This removes 150# requiement for legacy Mbed TLS entropy+ctr-drbg modules, which 151# saves RAM and ROM; 152# - use ROM pre-computed tables for AES; 153# - reduce the number of key slots to 3 in the PSA core. This is not a 154# huge limitation since PSA crypto is only used for AES-CMAC in hci_ipc. 155CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG=y 156CONFIG_MBEDTLS_AES_ROM_TABLES=y 157CONFIG_MBEDTLS_PSA_KEY_SLOT_COUNT=3 158 159# Reduce RAM footprint further otherwise the image won't fit in cpu_net. 160CONFIG_BT_CTLR_ADV_ISO_SET=1 161CONFIG_BT_CTLR_ADV_ISO_STREAM_COUNT=2 162