xref: /btstack/port/libusb/btstack_config.h (revision ecb4d2436a0b4a10615cc7cd74f63ea2aca37620)
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
16555ade44SDirk Helbig #ifdef HAVE_PORTAUDIO
17555ade44SDirk Helbig #define HAVE_BTSTACK_AUDIO_EFFECTIVE_SAMPLERATE
18555ade44SDirk Helbig #endif
190d529a9fSMatthias Ringwald 
200d529a9fSMatthias Ringwald // BTstack features that can be enabled
2136327e5aSMilanka Ringwald #define ENABLE_ATT_DELAYED_RESPONSE
220d529a9fSMatthias Ringwald #define ENABLE_BLE
237420e932SDirk Helbig #define ENABLE_BTSTACK_STDIN_LOGGING
2480b9a8caSMatthias Ringwald #define ENABLE_CLASSIC
2536327e5aSMilanka Ringwald #define ENABLE_CROSS_TRANSPORT_KEY_DERIVATION
26*ecb4d243SMatthias Ringwald #define ENABLE_GOEP_L2CAP
271bbecc2bSMatthias Ringwald #define ENABLE_HFP_WIDE_BAND_SPEECH
2836327e5aSMilanka Ringwald #define ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
291a682202SMatthias Ringwald #define ENABLE_LE_CENTRAL
30b28dc800SMatthias Ringwald #define ENABLE_L2CAP_LE_CREDIT_BASED_FLOW_CONTROL_MODE
31b435e062SMatthias Ringwald #define ENABLE_LE_DATA_LENGTH_EXTENSION
3236327e5aSMilanka Ringwald #define ENABLE_LE_PERIPHERAL
33b596325dSMatthias Ringwald #define ENABLE_LE_PRIVACY_ADDRESS_RESOLUTION
3436327e5aSMilanka Ringwald #define ENABLE_LE_SECURE_CONNECTIONS
350d529a9fSMatthias Ringwald #define ENABLE_LOG_ERROR
360d529a9fSMatthias Ringwald #define ENABLE_LOG_INFO
3736327e5aSMilanka Ringwald #define ENABLE_MICRO_ECC_FOR_LE_SECURE_CONNECTIONS
38606ccc9bSMilanka Ringwald #define ENABLE_PRINTF_HEXDUMP
3971c4de7aSMatthias Ringwald #define ENABLE_SCO_OVER_HCI
400d529a9fSMatthias Ringwald #define ENABLE_SDP_DES_DUMP
41a2ad0a75SMatthias Ringwald #define ENABLE_SOFTWARE_AES128
42f12a3722SMilanka Ringwald 
430d529a9fSMatthias Ringwald // BTstack configuration. buffers, sizes, ...
447907f069SMatthias Ringwald #define HCI_ACL_PAYLOAD_SIZE (1691 + 4)
457907f069SMatthias Ringwald #define HCI_INCOMING_PRE_BUFFER_SIZE 14 // sizeof BNEP header, avoid memcpy
467907f069SMatthias Ringwald 
47dbe92de6SMatthias Ringwald #define NVM_NUM_DEVICE_DB_ENTRIES      16
4836327e5aSMilanka Ringwald #define NVM_NUM_LINK_KEYS              16
49e514a7f5SMatthias Ringwald 
50e514a7f5SMatthias Ringwald // Mesh Configuration
51e514a7f5SMatthias Ringwald #define ENABLE_MESH
52e514a7f5SMatthias Ringwald #define ENABLE_MESH_ADV_BEARER
53e514a7f5SMatthias Ringwald #define ENABLE_MESH_GATT_BEARER
54e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_ADV
55e514a7f5SMatthias Ringwald #define ENABLE_MESH_PB_GATT
56e514a7f5SMatthias Ringwald #define ENABLE_MESH_PROVISIONER
5736327e5aSMilanka Ringwald #define ENABLE_MESH_PROXY_SERVER
58e514a7f5SMatthias Ringwald 
5936327e5aSMilanka Ringwald #define MAX_NR_MESH_SUBNETS            2
60cf862b36SMatthias Ringwald #define MAX_NR_MESH_TRANSPORT_KEYS    16
61cf862b36SMatthias Ringwald #define MAX_NR_MESH_VIRTUAL_ADDRESSES 16
62cf862b36SMatthias Ringwald 
63cf862b36SMatthias Ringwald // allow for one NetKey update
64cf862b36SMatthias Ringwald #define MAX_NR_MESH_NETWORK_KEYS      (MAX_NR_MESH_SUBNETS+1)
65cf862b36SMatthias Ringwald 
667907f069SMatthias Ringwald #endif
67cf862b36SMatthias Ringwald 
68