xref: /btstack/port/windows-winusb/btstack_config.h (revision 077fecbb6ed539507f37505ebd8a5b00e01c55e9)
1eddcc851SMatthias Ringwald //
2*077fecbbSMilanka Ringwald // btstack_config.h for Windows-winusb port
3*077fecbbSMilanka Ringwald //
4*077fecbbSMilanka Ringwald // Documentation: https://bluekitchen-gmbh.com/btstack/#how_to/
5eddcc851SMatthias Ringwald //
6eddcc851SMatthias Ringwald 
736327e5aSMilanka Ringwald #ifndef BTSTACK_CONFIG_H
836327e5aSMilanka Ringwald #define BTSTACK_CONFIG_H
9eddcc851SMatthias Ringwald 
10eddcc851SMatthias Ringwald // Port related features
11d20e3046SMatthias Ringwald #define HAVE_ASSERT
1236327e5aSMilanka Ringwald #define HAVE_BTSTACK_STDIN
13eddcc851SMatthias Ringwald #define HAVE_MALLOC
14eddcc851SMatthias Ringwald #define HAVE_POSIX_FILE_IO
15eddcc851SMatthias Ringwald #define HAVE_POSIX_TIME
16eddcc851SMatthias Ringwald 
17eddcc851SMatthias Ringwald // BTstack features that can be enabled
18eddcc851SMatthias Ringwald #define ENABLE_BLE
19eddcc851SMatthias Ringwald #define ENABLE_CLASSIC
2036327e5aSMilanka Ringwald #define ENABLE_CROSS_TRANSPORT_KEY_DERIVATION
211bbecc2bSMatthias Ringwald #define ENABLE_HFP_WIDE_BAND_SPEECH
22b5674ee2SMatthias Ringwald #define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
2373d0f5e5SMatthias Ringwald #define ENABLE_LE_CENTRAL
24b28dc800SMatthias Ringwald #define ENABLE_L2CAP_LE_CREDIT_BASED_FLOW_CONTROL_MODE
25b435e062SMatthias Ringwald #define ENABLE_LE_DATA_LENGTH_EXTENSION
2636327e5aSMilanka Ringwald #define ENABLE_LE_PERIPHERAL
27b596325dSMatthias Ringwald #define ENABLE_LE_PRIVACY_ADDRESS_RESOLUTION
2836327e5aSMilanka Ringwald #define ENABLE_LE_SECURE_CONNECTIONS
29eddcc851SMatthias Ringwald #define ENABLE_LOG_ERROR
30eddcc851SMatthias Ringwald #define ENABLE_LOG_INFO
3136327e5aSMilanka Ringwald #define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS
32606ccc9bSMilanka Ringwald #define ENABLE_PRINTF_HEXDUMP
33eddcc851SMatthias Ringwald #define ENABLE_SCO_OVER_HCI
34eddcc851SMatthias Ringwald #define ENABLE_SDP_DES_DUMP
357cdc89a5SMatthias Ringwald #define ENABLE_SOFTWARE_AES128
36eddcc851SMatthias Ringwald 
37eddcc851SMatthias Ringwald // BTstack configuration. buffers, sizes, ...
38eddcc851SMatthias Ringwald #define HCI_ACL_PAYLOAD_SIZE (1691 + 4)
39eddcc851SMatthias Ringwald #define HCI_INCOMING_PRE_BUFFER_SIZE 14 // sizeof BNEP header, avoid memcpy
40eddcc851SMatthias Ringwald 
41dbe92de6SMatthias Ringwald #define NVM_NUM_DEVICE_DB_ENTRIES      16
4236327e5aSMilanka Ringwald #define NVM_NUM_LINK_KEYS              16
43e514a7f5SMatthias Ringwald 
44e514a7f5SMatthias Ringwald // Mesh Configuration
45e514a7f5SMatthias Ringwald #define ENABLE_MESH
46e514a7f5SMatthias Ringwald #define ENABLE_MESH_ADV_BEARER
47e514a7f5SMatthias Ringwald #define ENABLE_MESH_GATT_BEARER
48e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_ADV
49e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_GATT
50e514a7f5SMatthias Ringwald #define ENABLE_MESH_PROVISIONER
5136327e5aSMilanka Ringwald #define ENABLE_MESH_PROXY_SERVER
52e514a7f5SMatthias Ringwald 
5336327e5aSMilanka Ringwald #define MAX_NR_MESH_SUBNETS            2
54e514a7f5SMatthias Ringwald #define MAX_NR_MESH_TRANSPORT_KEYS    16
55e514a7f5SMatthias Ringwald #define MAX_NR_MESH_VIRTUAL_ADDRESSES 16
56e514a7f5SMatthias Ringwald 
57e514a7f5SMatthias Ringwald // allow for one NetKey update
58e514a7f5SMatthias Ringwald #define MAX_NR_MESH_NETWORK_KEYS      (MAX_NR_MESH_SUBNETS+1)
59e514a7f5SMatthias Ringwald 
60eddcc851SMatthias Ringwald #endif
61