11#ifndef ZEPHYR_INCLUDE_BLUETOOTH_GAP_H_
12#define ZEPHYR_INCLUDE_BLUETOOTH_GAP_H_
26#define BT_COMP_ID_LF 0x05f1
29#define BT_DATA_FLAGS 0x01
30#define BT_DATA_UUID16_SOME 0x02
31#define BT_DATA_UUID16_ALL 0x03
32#define BT_DATA_UUID32_SOME 0x04
33#define BT_DATA_UUID32_ALL 0x05
34#define BT_DATA_UUID128_SOME 0x06
35#define BT_DATA_UUID128_ALL 0x07
36#define BT_DATA_NAME_SHORTENED 0x08
37#define BT_DATA_NAME_COMPLETE 0x09
38#define BT_DATA_TX_POWER 0x0a
39#define BT_DATA_SM_TK_VALUE 0x10
40#define BT_DATA_SM_OOB_FLAGS 0x11
41#define BT_DATA_SOLICIT16 0x14
42#define BT_DATA_SOLICIT128 0x15
43#define BT_DATA_SVC_DATA16 0x16
44#define BT_DATA_GAP_APPEARANCE 0x19
45#define BT_DATA_LE_BT_DEVICE_ADDRESS 0x1b
46#define BT_DATA_LE_ROLE 0x1c
47#define BT_DATA_SOLICIT32 0x1f
48#define BT_DATA_SVC_DATA32 0x20
49#define BT_DATA_SVC_DATA128 0x21
50#define BT_DATA_LE_SC_CONFIRM_VALUE 0x22
51#define BT_DATA_LE_SC_RANDOM_VALUE 0x23
52#define BT_DATA_URI 0x24
53#define BT_DATA_LE_SUPPORTED_FEATURES 0x27
54#define BT_DATA_CHANNEL_MAP_UPDATE_IND 0x28
55#define BT_DATA_MESH_PROV 0x29
56#define BT_DATA_MESH_MESSAGE 0x2a
57#define BT_DATA_MESH_BEACON 0x2b
58#define BT_DATA_BIG_INFO 0x2c
59#define BT_DATA_BROADCAST_CODE 0x2d
60#define BT_DATA_CSIS_RSI 0x2e
62#define BT_DATA_MANUFACTURER_DATA 0xff
64#define BT_LE_AD_LIMITED 0x01
65#define BT_LE_AD_GENERAL 0x02
66#define BT_LE_AD_NO_BREDR 0x04
69#define BT_GAP_SCAN_FAST_INTERVAL 0x0060
70#define BT_GAP_SCAN_FAST_WINDOW 0x0030
71#define BT_GAP_SCAN_SLOW_INTERVAL_1 0x0800
72#define BT_GAP_SCAN_SLOW_WINDOW_1 0x0012
73#define BT_GAP_SCAN_SLOW_INTERVAL_2 0x1000
74#define BT_GAP_SCAN_SLOW_WINDOW_2 0x0012
75#define BT_GAP_ADV_FAST_INT_MIN_1 0x0030
76#define BT_GAP_ADV_FAST_INT_MAX_1 0x0060
77#define BT_GAP_ADV_FAST_INT_MIN_2 0x00a0
78#define BT_GAP_ADV_FAST_INT_MAX_2 0x00f0
79#define BT_GAP_ADV_SLOW_INT_MIN 0x0640
80#define BT_GAP_ADV_SLOW_INT_MAX 0x0780
81#define BT_GAP_PER_ADV_FAST_INT_MIN_1 0x0018
82#define BT_GAP_PER_ADV_FAST_INT_MAX_1 0x0030
83#define BT_GAP_PER_ADV_FAST_INT_MIN_2 0x0050
84#define BT_GAP_PER_ADV_FAST_INT_MAX_2 0x0078
85#define BT_GAP_PER_ADV_SLOW_INT_MIN 0x0320
86#define BT_GAP_PER_ADV_SLOW_INT_MAX 0x03C0
87#define BT_GAP_INIT_CONN_INT_MIN 0x0018
88#define BT_GAP_INIT_CONN_INT_MAX 0x0028
133#define BT_GAP_ADV_MAX_ADV_DATA_LEN 31
139#define BT_GAP_ADV_MAX_EXT_ADV_DATA_LEN 1650
141#define BT_GAP_TX_POWER_INVALID 0x7f
142#define BT_GAP_RSSI_INVALID 0x7f
143#define BT_GAP_SID_INVALID 0xff
144#define BT_GAP_NO_TIMEOUT 0x0000
149#define BT_GAP_ADV_HIGH_DUTY_CYCLE_MAX_TIMEOUT 128
151#define BT_GAP_DATA_LEN_DEFAULT 0x001b
152#define BT_GAP_DATA_LEN_MAX 0x00fb
154#define BT_GAP_DATA_TIME_DEFAULT 0x0148
155#define BT_GAP_DATA_TIME_MAX 0x4290
157#define BT_GAP_SID_MAX 0x0F
158#define BT_GAP_PER_ADV_MAX_SKIP 0x01F3
159#define BT_GAP_PER_ADV_MIN_TIMEOUT 0x000A
160#define BT_GAP_PER_ADV_MAX_TIMEOUT 0x4000
162#define BT_GAP_PER_ADV_MIN_INTERVAL 0x0006
164#define BT_GAP_PER_ADV_MAX_INTERVAL 0xFFFF
171#define BT_GAP_PER_ADV_INTERVAL_TO_MS(interval) ((interval) * 5 / 4)
217#define BT_LE_SUPP_FEAT_40_ENCODE(w64) \
218 (((w64) >> 0) & 0xFF), \
219 (((w64) >> 8) & 0xFF), \
220 (((w64) >> 16) & 0xFF), \
221 (((w64) >> 24) & 0xFF), \
222 (((w64) >> 32) & 0xFF)
242#define BT_LE_SUPP_FEAT_32_ENCODE(w64) \
243 (((w64) >> 0) & 0xFF), \
244 (((w64) >> 8) & 0xFF), \
245 (((w64) >> 16) & 0xFF), \
246 (((w64) >> 24) & 0xFF)
267#define BT_LE_SUPP_FEAT_24_ENCODE(w64) \
268 (((w64) >> 0) & 0xFF), \
269 (((w64) >> 8) & 0xFF), \
270 (((w64) >> 16) & 0xFF),
291#define BT_LE_SUPP_FEAT_16_ENCODE(w64) \
292 (((w64) >> 0) & 0xFF), \
293 (((w64) >> 8) & 0xFF),
314#define BT_LE_SUPP_FEAT_8_ENCODE(w64) \
315 (((w64) >> 0) & 0xFF)
325#define BT_LE_SUPP_FEAT_VALIDATE(w64) \
326 BUILD_ASSERT(!((w64) & (~BIT64_MASK(40))), \
327 "RFU bit in LE Supported Features are not zeros.")
@ BT_GAP_CTE_AOD_2US
Definition: gap.h:180
@ BT_GAP_CTE_AOA
Definition: gap.h:176
@ BT_GAP_CTE_AOD_1US
Definition: gap.h:178
@ BT_GAP_CTE_NONE
Definition: gap.h:182
@ BT_GAP_SCA_21_30
Definition: gap.h:194
@ BT_GAP_SCA_31_50
Definition: gap.h:193
@ BT_GAP_SCA_101_150
Definition: gap.h:190
@ BT_GAP_SCA_251_500
Definition: gap.h:188
@ BT_GAP_SCA_51_75
Definition: gap.h:192
@ BT_GAP_SCA_76_100
Definition: gap.h:191
@ BT_GAP_SCA_151_250
Definition: gap.h:189
@ BT_GAP_SCA_0_20
Definition: gap.h:195
@ BT_GAP_SCA_UNKNOWN
Definition: gap.h:187
@ BT_GAP_LE_PHY_1M
Definition: gap.h:95
@ BT_GAP_LE_PHY_2M
Definition: gap.h:97
@ BT_GAP_LE_PHY_CODED
Definition: gap.h:99
@ BT_GAP_LE_PHY_NONE
Definition: gap.h:93
@ BT_GAP_ADV_TYPE_ADV_DIRECT_IND
Definition: gap.h:107
@ BT_GAP_ADV_TYPE_EXT_ADV
Definition: gap.h:115
@ BT_GAP_ADV_TYPE_SCAN_RSP
Definition: gap.h:113
@ BT_GAP_ADV_TYPE_ADV_NONCONN_IND
Definition: gap.h:111
@ BT_GAP_ADV_TYPE_ADV_SCAN_IND
Definition: gap.h:109
@ BT_GAP_ADV_TYPE_ADV_IND
Definition: gap.h:105
@ BT_GAP_ADV_PROP_DIRECTED
Definition: gap.h:125
@ BT_GAP_ADV_PROP_SCAN_RESPONSE
Definition: gap.h:127
@ BT_GAP_ADV_PROP_SCANNABLE
Definition: gap.h:123
@ BT_GAP_ADV_PROP_EXT_ADV
Definition: gap.h:129
@ BT_GAP_ADV_PROP_CONNECTABLE
Definition: gap.h:121
#define BIT(n)
Unsigned integer with bit position n set (signed in assembly language).
Definition: util_macro.h:44