14e630824SMatthias Ringwald // 24e630824SMatthias Ringwald // btstack_config.h for libusb port 34e630824SMatthias Ringwald // 44e630824SMatthias Ringwald 54e630824SMatthias Ringwald #ifndef __BTSTACK_CONFIG 64e630824SMatthias Ringwald #define __BTSTACK_CONFIG 74e630824SMatthias Ringwald 84e630824SMatthias Ringwald // Port related features 9*d20e3046SMatthias Ringwald #define HAVE_ASSERT 104e630824SMatthias Ringwald #define HAVE_MALLOC 114e630824SMatthias Ringwald #define HAVE_POSIX_FILE_IO 127ea7688aSMatthias Ringwald #define HAVE_BTSTACK_STDIN 134e630824SMatthias Ringwald #define HAVE_POSIX_TIME 144e630824SMatthias Ringwald 154e630824SMatthias Ringwald // BTstack features that can be enabled 164e630824SMatthias Ringwald #define ENABLE_BLE 174e630824SMatthias Ringwald #define ENABLE_CLASSIC 181bbecc2bSMatthias Ringwald #define ENABLE_HFP_WIDE_BAND_SPEECH 19b5674ee2SMatthias Ringwald #define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE 2073d0f5e5SMatthias Ringwald #define ENABLE_LE_CENTRAL 211bbecc2bSMatthias Ringwald #define ENABLE_LE_PERIPHERAL 224e630824SMatthias Ringwald #define ENABLE_LE_SECURE_CONNECTIONS 23fcae305fSMatthias Ringwald #define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS 24ff01079bSMatthias Ringwald #define ENABLE_LE_DATA_CHANNELS 25b435e062SMatthias Ringwald #define ENABLE_LE_DATA_LENGTH_EXTENSION 26b596325dSMatthias Ringwald #define ENABLE_LE_PRIVACY_ADDRESS_RESOLUTION 275308b30fSMatthias Ringwald #define ENABLE_CROSS_TRANSPORT_KEY_DERIVATION 284e630824SMatthias Ringwald #define ENABLE_LOG_ERROR 294e630824SMatthias Ringwald #define ENABLE_LOG_INFO 304e630824SMatthias Ringwald #define ENABLE_SCO_OVER_HCI 314e630824SMatthias Ringwald #define ENABLE_SDP_DES_DUMP 327cdc89a5SMatthias Ringwald #define ENABLE_SOFTWARE_AES128 334e630824SMatthias Ringwald 344e630824SMatthias Ringwald // BTstack configuration. buffers, sizes, ... 354e630824SMatthias Ringwald #define HCI_ACL_PAYLOAD_SIZE (1691 + 4) 364e630824SMatthias Ringwald #define HCI_INCOMING_PRE_BUFFER_SIZE 14 // sizeof BNEP header, avoid memcpy 374e630824SMatthias Ringwald 38dbe92de6SMatthias Ringwald #define NVM_NUM_LINK_KEYS 16 39dbe92de6SMatthias Ringwald #define NVM_NUM_DEVICE_DB_ENTRIES 16 40e514a7f5SMatthias Ringwald 41e514a7f5SMatthias Ringwald // Mesh Configuration 42e514a7f5SMatthias Ringwald #define ENABLE_MESH 43e514a7f5SMatthias Ringwald #define ENABLE_MESH_ADV_BEARER 44e514a7f5SMatthias Ringwald #define ENABLE_MESH_GATT_BEARER 45e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_ADV 46e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_GATT 47e514a7f5SMatthias Ringwald #define ENABLE_MESH_PROXY_SERVER 48e514a7f5SMatthias Ringwald #define ENABLE_MESH_PROVISIONER 49e514a7f5SMatthias Ringwald 50e514a7f5SMatthias Ringwald #define MAX_NR_MESH_TRANSPORT_KEYS 16 51e514a7f5SMatthias Ringwald #define MAX_NR_MESH_VIRTUAL_ADDRESSES 16 52e514a7f5SMatthias Ringwald #define MAX_NR_MESH_SUBNETS 2 53e514a7f5SMatthias Ringwald 54e514a7f5SMatthias Ringwald // allow for one NetKey update 55e514a7f5SMatthias Ringwald #define MAX_NR_MESH_NETWORK_KEYS (MAX_NR_MESH_SUBNETS+1) 56e514a7f5SMatthias Ringwald 57e514a7f5SMatthias Ringwald 584e630824SMatthias Ringwald #endif 59