Kconfig 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357
  1. # Kconfig file for package BTSTACK
  2. menuconfig PKG_USING_BTSTACK
  3. select RT_USING_LIBC
  4. select RT_USING_PTHREADS
  5. select RT_USING_POSIX
  6. select RT_USING_POSIX_TERMIOS
  7. bool "BTSTACK: embedded btstack"
  8. default n
  9. if PKG_USING_BTSTACK
  10. config _GNU_SOURCE
  11. int
  12. default 1
  13. config HAVE_DIRENT_STRUCTURE
  14. int
  15. default 1
  16. config HAVE_DIR_STRUCTURE
  17. int
  18. default 1
  19. config PKG_BTSTACK_PATH
  20. string
  21. default "/packages/iot/btstack"
  22. # btstack office config
  23. menu "BTSTACK stack config"
  24. config ENABLE_LOG_ERROR
  25. bool "btstack error log support"
  26. default y
  27. help
  28. This option log error support.
  29. config ENABLE_LOG_INFO
  30. bool "btstack info log support"
  31. default n
  32. help
  33. This option log info log support.
  34. config ENABLE_LOG_DEBUG
  35. bool "btstack debug log support"
  36. default n
  37. help
  38. This option debug info log support.
  39. config ENABLE_SDP_DES_DUMP
  40. bool "btstack SDP Dump DataElement support"
  41. default y
  42. endmenu
  43. menuconfig ENABLE_LE
  44. bool "BTSTACK BLE support"
  45. default n
  46. if ENABLE_LE
  47. config ENABLE_LE_PERIPHERAL
  48. bool "btstack LE peripheral support"
  49. default y
  50. config ENABLE_LE_CENTRAL
  51. bool "btstack LE central support"
  52. default n
  53. config ENABLE_LE_DATA_CHANNELS
  54. bool "btstack LE data channel support"
  55. default y
  56. config ENABLE_LE_DATA_LENGTH_EXTENSION
  57. bool "btstack LE data length extension"
  58. default n
  59. config ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
  60. bool "btstack L2CAP ERTM support"
  61. default n
  62. endif
  63. menuconfig ENABLE_CLASSIC
  64. bool "BTSTACK BR_EDR SUPPORT"
  65. default n
  66. if ENABLE_CLASSIC
  67. config NVM_NUM_LINK_KEYS
  68. int
  69. default 16
  70. config NVM_NUM_DEVICE_DB_ENTRIES
  71. int "btstack class device link support"
  72. default 16
  73. config HCI_INCOMING_PRE_BUFFER_SIZE
  74. int "HCI incomming pre in head BUFFER SIZE"
  75. default 14
  76. config HCI_ACL_PAYLOAD_SIZE
  77. int "HCI acl payload size"
  78. default 1695
  79. #HFP
  80. config ENABLE_HFP_WIDE_BAND_SPEECH
  81. bool "btstack class HFP WIDE BAND support"
  82. default n
  83. config PKG_BTSTACK_SBC_ENC
  84. bool "Bluetooth SBC encode support"
  85. default n
  86. help
  87. This option enables Bluetooth Audio ENCODE support.
  88. config PKG_BTSTACK_SBC_DEC
  89. bool "Bluetooth SBC encode decode support"
  90. default n
  91. help
  92. This option enables Bluetooth Audio DECODE support.
  93. config PKG_BTSTACK_CVSD
  94. bool "Bluetooth CVSD support"
  95. default n
  96. help
  97. This option enables Bluetooth CVSD support.
  98. config PKG_BTSTACK_AUDIO
  99. bool "Bluetooth audio support"
  100. default n
  101. help
  102. This option enables Bluetooth audio support.
  103. config PKG_BTSTACK_SDP_CLIENT
  104. bool "Bluetooth SDP CLIENT support"
  105. default n
  106. help
  107. This option enables Bluetooth SDP client support.
  108. config PKG_BTSTACK_HFP_AUDIO
  109. bool "Bluetooth CVSD support"
  110. default n
  111. select PKG_BTSTACK_CVSD
  112. select PKG_BTSTACK_SBC_DEC
  113. select PKG_BTSTACK_SBC_ENC
  114. select PKG_BTSTACK_SDP_CLIENT
  115. select PKG_BTSTACK_AUDIO
  116. help
  117. This option enables Bluetooth HFP support.
  118. endif
  119. menuconfig ENABLE_MESH
  120. bool "BTSTACK Mesh SUPPORT"
  121. default n
  122. if ENABLE_MESH
  123. config ENABLE_MESH_ADV_BEARER
  124. bool "support the adv bear"
  125. default y
  126. config ENABLE_MESH_GATT_BEARER
  127. bool "support the gatt bear"
  128. default y
  129. config ENABLE_MESH_PB_ADV
  130. bool "support the gatt bear"
  131. default y
  132. config ENABLE_MESH_PB_GATT
  133. bool "provisioner gatt"
  134. default y
  135. config ENABLE_MESH_PROXY_SERVER
  136. bool "provisioner server"
  137. default y
  138. config ENABLE_MESH_PROVISIONER
  139. bool "provisioner server"
  140. default y
  141. config MAX_NR_MESH_TRANSPORT_KEYS
  142. int
  143. default 16
  144. config MAX_NR_MESH_VIRTUAL_ADDRESSES
  145. int
  146. default 16
  147. config MAX_NR_MESH_SUBNETS
  148. int
  149. default 2
  150. config MAX_NR_MESH_NETWORK_KEYS
  151. int
  152. default 3
  153. endif
  154. menuconfig PKG_BTSTACK_SMP
  155. bool "BTSTACK SMP SUPPORT"
  156. default n
  157. if PKG_BTSTACK_SMP
  158. config ENABLE_ECC_P256
  159. bool
  160. default y
  161. endif
  162. # example
  163. choice
  164. prompt "BTSTACK example ALL"
  165. default PKG_BTSTACK_SAMPLE_LE_BLUFI_SERVER
  166. help
  167. select the BTSTACK samples
  168. config PKG_BTSTACK_SAMPLE_DISABLE
  169. bool "Not enable sample"
  170. config PKG_BTSTACK_SAMPLE_LE_BLUFI_SERVER
  171. bool "[LE_SRV] rtthread blufi server"
  172. select ENABLE_LE
  173. config PKG_BTSTACK_SAMPLE_LE_COUNTER
  174. bool "[LE_SRV] BLE peripheral le counter"
  175. select ENABLE_LE
  176. select ENABLE_LE_PERIPHERAL
  177. config PKG_BTSTACK_SAMPLE_LE_DATA_CHANNEL_SERVER
  178. bool "[LE_SRV] BLE peripheral le data channel server"
  179. select ENABLE_LE
  180. select ENABLE_LE_PERIPHERAL
  181. config PKG_BTSTACK_SAMPLE_LE_STREAMER
  182. bool "[LE_SRV] Nordic le streamer server"
  183. select ENABLE_LE
  184. select ENABLE_LE_PERIPHERAL
  185. config PKG_BTSTACK_SAMPLE_NORDIC_LE_COUNTER
  186. bool "[LE_SRV] Nordic le counter server"
  187. select ENABLE_LE
  188. select ENABLE_LE_PERIPHERAL
  189. config PKG_BTSTACK_SAMPLE_UBLOX_LE_COUNTER
  190. bool "[LE_SRV] Nordic spp ublox server"
  191. select ENABLE_LE
  192. select ENABLE_LE_PERIPHERAL
  193. config PKG_BTSTACK_SAMPLE_ATT_DELAYED_RESPONSE
  194. bool "[LE_SRV] gatt dealyed response"
  195. select ENABLE_LE
  196. select ENABLE_LE_PERIPHERAL
  197. config PKG_BTSTACK_SAMPLE_SM_PAIRING_PERIPHERAL
  198. bool "[LE_SMP_SRV] smp peripherals"
  199. select ENABLE_LE
  200. select ENABLE_LE_PERIPHERAL
  201. config PKG_BTSTACK_SAMPLE_GATT_STREAMER_PERIPHERAL
  202. bool "[LE_SRV] gatt streamer peipheral"
  203. select ENABLE_LE
  204. select ENABLE_LE_PERIPHERAL
  205. config PKG_BTSTACK_SAMPLE_ANCS_CLIENT_DEMO
  206. bool "[LE_SRV] ancs_client_demo"
  207. select ENABLE_LE
  208. select ENABLE_LE_PERIPHERAL
  209. config PKG_BTSTACK_SAMPLE_HOGP_KEYBOARD_DEMO
  210. bool "[LE_SRV_hogp] hogp keyboard demo"
  211. select ENABLE_LE
  212. select ENABLE_LE_PERIPHERAL
  213. config PKG_BTSTACK_SAMPLE_HOGP_MOUSER_DEMO
  214. bool "[LE_SRV_hogp] hogp mouser demo"
  215. select ENABLE_LE
  216. select ENABLE_LE_PERIPHERAL
  217. # MESH role
  218. config PKG_BTSTACK_SAMPLE_MESH_DEMO
  219. bool "[MESH_NODE] MESH DEMO"
  220. select ENABLE_LE
  221. select ENABLE_MESH
  222. select PKG_BTSTACK_SMP
  223. config PKG_BTSTACK_SAMPLE_TMALL_MESH_DEMO
  224. bool "[MESH_NODE] MESH DEMO ON TMALL ALIGEN"
  225. select ENABLE_LE
  226. select ENABLE_MESH
  227. select PKG_BTSTACK_SMP
  228. # dule mode le and bredr
  229. config PKG_BTSTACK_SAMPLE_SPP_GATT_COUNTER_DEMO
  230. bool "[EDR_LE_SLAVE] spp and gatt counter"
  231. select ENABLE_LE
  232. select ENABLE_CLASSIC
  233. config PKG_BTSTACK_SAMPLE_SPP_GATT_STREAMER_DEMO
  234. bool "[EDR_LE_SLAVE] spp and gatt streamer"
  235. select ENABLE_LE
  236. select ENABLE_CLASSIC
  237. config PKG_BTSTACK_SAMPLE_SPP_COUNTER_DEMO
  238. bool "[EDR_SPP_SLAVE] spp counter"
  239. select ENABLE_CLASSIC
  240. config PKG_BTSTACK_SAMPLE_SPP_STREAMER_DEMO
  241. bool "[EDR_SPP_SLAVE] spp streamer"
  242. select ENABLE_CLASSIC
  243. # classic example
  244. config PKG_BTSTACK_SAMPLE_HFP_HF_DEMO
  245. bool "[EDR_HFP_SLAVE] hfp handsfree demo"
  246. select ENABLE_CLASSIC
  247. select PKG_BTSTACK_HFP_AUDIO
  248. select PKG_BTSTACK_AUDIO
  249. config PKG_BTSTACK_SAMPLE_HFP_AG_DEMO
  250. bool "[EDR_HFP_MASTER] hfp AG demo"
  251. select ENABLE_CLASSIC
  252. select PKG_BTSTACK_HFP_AUDIO
  253. select PKG_BTSTACK_AUDIO
  254. config PKG_BTSTACK_SAMPLE_HSP_HS_DEMO
  255. bool "[EDR_HSP_SLAVE] hfp headset demo"
  256. select ENABLE_CLASSIC
  257. select PKG_BTSTACK_HFP_AUDIO
  258. select PKG_BTSTACK_AUDIO
  259. config PKG_BTSTACK_SAMPLE_HSP_AG_DEMO
  260. bool "[EDR_HSP_MASTER] hfp ag demo"
  261. select ENABLE_CLASSIC
  262. select PKG_BTSTACK_HFP_AUDIO
  263. endchoice
  264. # btstack config
  265. choice
  266. prompt "Version"
  267. default PKG_USING_BTSTACK_LATEST_VERSION
  268. help
  269. Select the package version
  270. config PKG_USING_BTSTACK_V001
  271. bool "v0.0.1"
  272. config PKG_USING_BTSTACK_LATEST_VERSION
  273. bool "latest"
  274. endchoice
  275. config PKG_BTSTACK_VER
  276. string
  277. default "v0.0.1" if PKG_USING_BTSTACK_V001
  278. default "latest" if PKG_USING_BTSTACK_LATEST_VERSION
  279. endif