xref: /btstack/port/posix-h4-da14585/btstack_config.h (revision cd5f23a3250874824c01a2b3326a9522fea3f99f)
1 //
2 // btstack_config.h for generic POSIX H4 port
3 //
4 
5 #ifndef BTSTACK_CONFIG_H
6 #define BTSTACK_CONFIG_H
7 
8 // Port related features
9 #define HAVE_ASSERT
10 #define HAVE_BTSTACK_STDIN
11 #define HAVE_MALLOC
12 #define HAVE_POSIX_FILE_IO
13 #define HAVE_POSIX_TIME
14 
15 // BTstack features that can be enabled
16 #define ENABLE_BLE
17 #define ENABLE_LE_CENTRAL
18 #define ENABLE_LE_DATA_CHANNELS
19 #define ENABLE_LE_DATA_LENGTH_EXTENSION
20 #define ENABLE_LE_PERIPHERAL
21 #define ENABLE_LE_PRIVACY_ADDRESS_RESOLUTION
22 #define ENABLE_LE_SECURE_CONNECTIONS
23 #define ENABLE_LOG_ERROR
24 #define ENABLE_LOG_INFO
25 #define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS
26 #define ENABLE_PRINTF_HEXDUMP
27 
28 // work around bug in Controller ACL fragmentation
29 #define ENABLE_LE_LIMIT_ACL_FRAGMENT_BY_MAX_OCTETS
30 
31 // work around bug in Controller
32 #define ENABLE_LE_WHITELIST_TOUCH_AFTER_RESOLVING_LIST_UPDATE
33 
34 
35 // BTstack configuration. buffers, sizes, ...
36 #define HCI_ACL_PAYLOAD_SIZE (1691 + 4)
37 #define HCI_INCOMING_PRE_BUFFER_SIZE 14 // sizeof benep heade, avoid memcpy
38 
39 #define NVM_NUM_DEVICE_DB_ENTRIES      20
40 
41 // Mesh Configuration
42 #define ENABLE_MESH
43 #define ENABLE_MESH_ADV_BEARER
44 #define ENABLE_MESH_GATT_BEARER
45 #define ENABLE_MESH_PB_ADV
46 #define ENABLE_MESH_PB_GATT
47 #define ENABLE_MESH_PROVISIONER
48 #define ENABLE_MESH_PROXY_SERVER
49 
50 #define MAX_NR_MESH_SUBNETS            2
51 #define MAX_NR_MESH_TRANSPORT_KEYS    16
52 #define MAX_NR_MESH_VIRTUAL_ADDRESSES 16
53 
54 // allow for one NetKey update
55 #define MAX_NR_MESH_NETWORK_KEYS      (MAX_NR_MESH_SUBNETS+1)
56 
57 #endif
58 
59