config.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. /*
  2. * SPDX-License-Identifier: Apache-2.0
  3. *
  4. * Date Author Notes
  5. * 2018-12-29 ChenYong first implementation
  6. * 2022-05-20 Jackistang add ble host auto start
  7. */
  8. #ifndef __NUMBLE_CONFIG_H__
  9. #define __NUMBLE_CONFIG_H__
  10. #include <rtconfig.h>
  11. #include "os/util.h"
  12. #include "console/console.h"
  13. /**
  14. * Bluetooth role support
  15. */
  16. #ifdef PKG_NIMBLE_ROLE_PERIPHERAL
  17. #define MYNEWT_VAL_BLE_ROLE_PERIPHERAL (1)
  18. #endif
  19. #ifdef PKG_NIMBLE_ROLE_CENTRAL
  20. #define MYNEWT_VAL_BLE_ROLE_CENTRAL (1)
  21. #endif
  22. #ifdef PKG_NIMBLE_ROLE_BROADCASTER
  23. #define MYNEWT_VAL_BLE_ROLE_BROADCASTER (1)
  24. #endif
  25. #ifdef PKG_NIMBLE_ROLE_OBSERVER
  26. #define MYNEWT_VAL_BLE_ROLE_OBSERVER (1)
  27. #endif
  28. #ifdef PKG_NIMBLE_MAX_CONNECTIONS
  29. #define MYNEWT_VAL_BLE_MAX_CONNECTIONS (PKG_NIMBLE_MAX_CONNECTIONS)
  30. #endif
  31. #ifdef PKG_NIMBLE_MULTI_ADV_INSTANCES
  32. #define MYNEWT_VAL_BLE_MULTI_ADV_INSTANCES (PKG_NIMBLE_MULTI_ADV_INSTANCES)
  33. #endif
  34. #ifdef PKG_NIMBLE_WHITELIST
  35. #define MYNEWT_VAL_BLE_WHITELIST (1)
  36. #endif
  37. #ifdef PKG_NIMBLE_EXT_ADV
  38. #define MYNEWT_VAL_BLE_EXT_ADV (1)
  39. #endif
  40. #ifdef PKG_NIMBLE_EXT_ADV_MAX_SIZE
  41. #define MYNEWT_VAL_BLE_EXT_ADV_MAX_SIZE (PKG_NIMBLE_EXT_ADV_MAX_SIZE)
  42. #endif
  43. /**
  44. * Host Stack Configuration
  45. */
  46. #ifdef PKG_NIMBLE_HOST_THREAD_STACK_SIZE
  47. #define MYNEWT_VAL_BLE_HOST_THREAD_STACK_SIZE (PKG_NIMBLE_HOST_THREAD_STACK_SIZE)
  48. #endif
  49. #ifdef PKG_NIMBLE_HOST_THREAD_PRIORITY
  50. #define MYNEWT_VAL_BLE_HOST_THREAD_PRIORITY (PKG_NIMBLE_HOST_THREAD_PRIORITY)
  51. #endif
  52. #define MYNEWT_VAL_BLE_HS_AUTO_START 1
  53. /**
  54. * Mesh Configuration
  55. */
  56. #ifdef PKG_NIMBLE_MESH
  57. #define MYNEWT_VAL_BLE_MESH (1)
  58. #endif
  59. #ifdef PKG_NIMBLE_MESH_DEVICE_NAME
  60. #define MYNEWT_VAL_BLE_MESH_DEVICE_NAME PKG_NIMBLE_MESH_DEVICE_NAME
  61. #endif
  62. #ifdef PKG_NIMBLE_MESH_ADV_THREAD_STACK_SIZE
  63. #define MYNEWT_VAL_BLE_MESH_ADV_THREAD_STACK_SIZE (PKG_NIMBLE_MESH_ADV_THREAD_STACK_SIZE)
  64. #endif
  65. #ifdef PKG_NIMBLE_MESH_ADV_THREAD_PRIORITY
  66. #define MYNEWT_VAL_BLE_MESH_ADV_THREAD_PRIORITY (PKG_NIMBLE_MESH_ADV_THREAD_PRIORITY)
  67. #endif
  68. #ifdef PKG_NIMBLE_MESH_CFG_CLI
  69. #define BLE_MESH_CFG_CLI (1)
  70. #endif
  71. /**
  72. * Controller Configuration
  73. */
  74. #ifdef PKG_NIMBLE_CTLR_THREAD_STACK_SIZE
  75. #define MYNEWT_VAL_BLE_CTLR_THREAD_STACK_SIZE (PKG_NIMBLE_CTLR_THREAD_STACK_SIZE)
  76. #endif
  77. #ifdef PKG_NIMBLE_CTLR_THREAD_PRIORITY
  78. #define MYNEWT_VAL_BLE_CTLR_THREAD_PRIORITY (PKG_NIMBLE_CTLR_THREAD_PRIORITY)
  79. #endif
  80. #ifdef PKG_NIMBLE_BSP_NRF51
  81. #define MYNEWT_VAL_BSP_NRF51 (1)
  82. #endif
  83. #ifdef PKG_NIMBLE_BSP_NRF52
  84. #define MYNEWT_VAL_BSP_NRF52 (1)
  85. #define MYNEWT_VAL_TIMER_0 0
  86. #define MYNEWT_VAL_TIMER_5 1
  87. #define MYNEWT_VAL_OS_CPUTIME_FREQ 32768
  88. #define MYNEWT_VAL_OS_CPUTIME_TIMER_NUM 5
  89. #define MYNEWT_VAL_BLE_LL_RFMGMT_ENABLE_TIME 1500
  90. #endif
  91. #ifdef PKG_NIMBLE_BSP_NRF52840
  92. #define MYNEWT_VAL_BSP_NRF52840 (1)
  93. #endif
  94. #endif