xref: /btstack/port/libusb/btstack_config.h (revision b2b52d42121140bd6be66e10082f8d3a2ad5d13c)
10d529a9fSMatthias Ringwald //
20d529a9fSMatthias Ringwald // btstack_config.h for libusb port
30d529a9fSMatthias Ringwald //
4077fecbbSMilanka Ringwald // Documentation: https://bluekitchen-gmbh.com/btstack/#how_to/
5077fecbbSMilanka Ringwald //
67907f069SMatthias Ringwald 
736327e5aSMilanka Ringwald #ifndef BTSTACK_CONFIG_H
836327e5aSMilanka Ringwald #define BTSTACK_CONFIG_H
97907f069SMatthias Ringwald 
100d529a9fSMatthias Ringwald // Port related features
11d20e3046SMatthias Ringwald #define HAVE_ASSERT
1236327e5aSMilanka Ringwald #define HAVE_BTSTACK_STDIN
137907f069SMatthias Ringwald #define HAVE_MALLOC
1409bb5270SMatthias Ringwald #define HAVE_POSIX_FILE_IO
15d0755cd6SMatthias Ringwald #define HAVE_POSIX_TIME
16*b2b52d42SMatthias Ringwald 
17555ade44SDirk Helbig #ifdef HAVE_PORTAUDIO
18555ade44SDirk Helbig #define HAVE_BTSTACK_AUDIO_EFFECTIVE_SAMPLERATE
19*b2b52d42SMatthias Ringwald 
20555ade44SDirk Helbig #endif
210d529a9fSMatthias Ringwald 
220d529a9fSMatthias Ringwald // BTstack features that can be enabled
2336327e5aSMilanka Ringwald #define ENABLE_ATT_DELAYED_RESPONSE
24*b2b52d42SMatthias Ringwald #define ENABLE_AVRCP_COVER_ART
250d529a9fSMatthias Ringwald #define ENABLE_BLE
267420e932SDirk Helbig #define ENABLE_BTSTACK_STDIN_LOGGING
2780b9a8caSMatthias Ringwald #define ENABLE_CLASSIC
2836327e5aSMilanka Ringwald #define ENABLE_CROSS_TRANSPORT_KEY_DERIVATION
29ecb4d243SMatthias Ringwald #define ENABLE_GOEP_L2CAP
301bbecc2bSMatthias Ringwald #define ENABLE_HFP_WIDE_BAND_SPEECH
3136327e5aSMilanka Ringwald #define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
32b28dc800SMatthias Ringwald #define ENABLE_L2CAP_LE_CREDIT_BASED_FLOW_CONTROL_MODE
33*b2b52d42SMatthias Ringwald #define ENABLE_LE_CENTRAL
34b435e062SMatthias Ringwald #define ENABLE_LE_DATA_LENGTH_EXTENSION
3536327e5aSMilanka Ringwald #define ENABLE_LE_PERIPHERAL
36b596325dSMatthias Ringwald #define ENABLE_LE_PRIVACY_ADDRESS_RESOLUTION
3736327e5aSMilanka Ringwald #define ENABLE_LE_SECURE_CONNECTIONS
380d529a9fSMatthias Ringwald #define ENABLE_LOG_ERROR
390d529a9fSMatthias Ringwald #define ENABLE_LOG_INFO
4036327e5aSMilanka Ringwald #define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS
41606ccc9bSMilanka Ringwald #define ENABLE_PRINTF_HEXDUMP
4271c4de7aSMatthias Ringwald #define ENABLE_SCO_OVER_HCI
430d529a9fSMatthias Ringwald #define ENABLE_SDP_DES_DUMP
44a2ad0a75SMatthias Ringwald #define ENABLE_SOFTWARE_AES128
45f12a3722SMilanka Ringwald 
460d529a9fSMatthias Ringwald // BTstack configuration. buffers, sizes, ...
477907f069SMatthias Ringwald #define HCI_ACL_PAYLOAD_SIZE (1691 + 4)
487907f069SMatthias Ringwald #define HCI_INCOMING_PRE_BUFFER_SIZE 14 // sizeof BNEP header, avoid memcpy
497907f069SMatthias Ringwald 
50dbe92de6SMatthias Ringwald #define NVM_NUM_DEVICE_DB_ENTRIES      16
5136327e5aSMilanka Ringwald #define NVM_NUM_LINK_KEYS              16
52e514a7f5SMatthias Ringwald 
53e514a7f5SMatthias Ringwald // Mesh Configuration
54e514a7f5SMatthias Ringwald #define ENABLE_MESH
55e514a7f5SMatthias Ringwald #define ENABLE_MESH_ADV_BEARER
56e514a7f5SMatthias Ringwald #define ENABLE_MESH_GATT_BEARER
57e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_ADV
58e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_GATT
59e514a7f5SMatthias Ringwald #define ENABLE_MESH_PROVISIONER
6036327e5aSMilanka Ringwald #define ENABLE_MESH_PROXY_SERVER
61e514a7f5SMatthias Ringwald 
6236327e5aSMilanka Ringwald #define MAX_NR_MESH_SUBNETS            2
63cf862b36SMatthias Ringwald #define MAX_NR_MESH_TRANSPORT_KEYS    16
64cf862b36SMatthias Ringwald #define MAX_NR_MESH_VIRTUAL_ADDRESSES 16
65cf862b36SMatthias Ringwald 
66cf862b36SMatthias Ringwald // allow for one NetKey update
67cf862b36SMatthias Ringwald #define MAX_NR_MESH_NETWORK_KEYS      (MAX_NR_MESH_SUBNETS+1)
68cf862b36SMatthias Ringwald 
697907f069SMatthias Ringwald #endif
70cf862b36SMatthias Ringwald 
71