Mistake on this page?
Report an issue in GitHub or email us
cfg_mac_ble.h
Go to the documentation of this file.
1 /*************************************************************************************************/
2 /*!
3  * \file
4  *
5  * \brief BLE MAC system configuration.
6  *
7  * Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved.
8  *
9  * Copyright (c) 2019-2020 Packetcraft, Inc.
10  *
11  * Licensed under the Apache License, Version 2.0 (the "License");
12  * you may not use this file except in compliance with the License.
13  * You may obtain a copy of the License at
14  *
15  * http://www.apache.org/licenses/LICENSE-2.0
16  *
17  * Unless required by applicable law or agreed to in writing, software
18  * distributed under the License is distributed on an "AS IS" BASIS,
19  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20  * See the License for the specific language governing permissions and
21  * limitations under the License.
22  */
23 /*************************************************************************************************/
24 
25 #ifndef CFG_MAC_BLE_H
26 #define CFG_MAC_BLE_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 /**************************************************************************************************
33  Macros
34 **************************************************************************************************/
35 
36 /*** LL ***/
37 
38 #ifndef LL_API_PARAM_CHECK
39 #define LL_API_PARAM_CHECK 1 /*!< Check API parameters. */
40 #endif
41 
42 #ifndef LL_MAX_CONN
43 #define LL_MAX_CONN 4 /*!< Absolute maximum number of connections (maximum is 32). */
44 #endif
45 
46 #ifndef LL_MAX_FRAG
47 #define LL_MAX_FRAG 8 /*!< Maximum number of Data PDU fragments. */
48 #endif
49 
50 #ifndef LL_NUM_ADV_FILT
51 #define LL_NUM_ADV_FILT 8 /*!< Table size for advertising filter. */
52 #endif
53 
54 #ifndef LL_MAX_ADV_SETS
55 #define LL_MAX_ADV_SETS 6 /*!< Absolute maximum number of advertising sets. */
56 #endif
57 
58 #ifndef LL_MAX_PHYS
59 #define LL_MAX_PHYS 3 /*!< Absolute maximum number of PHYs supported. */
60 #endif
61 
62 #ifndef LL_MAX_PER_SCAN
63 #define LL_MAX_PER_SCAN 6 /*!< Absolute maximum number of periodic scanners (maximum is 32). */
64 #endif
65 
66 #ifndef LL_ENABLE_TESTER
67 #define LL_ENABLE_TESTER 0 /*!< Enable LL tester extensions. */
68 #endif
69 
70 #ifndef LL_ENABLE_CALIBRATION
71 #define LL_ENABLE_CALIBRATION 0 /*!< Enable LL calibration extensions. */
72 #endif
73 
74 #ifndef LL_MAX_CIG
75 #define LL_MAX_CIG 2 /*!< Absolute maximum number of connected isochronous groups. */
76 #endif
77 
78 #ifndef LL_MAX_CIS
79 #define LL_MAX_CIS 6 /*!< Absolute maximum number of connected isochronous streams, it is shared by CIGs. */
80 #endif
81 
82 #ifndef LL_MAX_BIG
83 #define LL_MAX_BIG 2 /*!< Absolute maximum number of broadcast isochronous groups. */
84 #endif
85 
86 #ifndef LL_MAX_BIS
87 #define LL_MAX_BIS 6 /*!< Absolute maximum number of broadcast isochronous streams, it is shared by BIGs. */
88 #endif
89 
90 #ifndef LL_MAX_BN
91 #define LL_MAX_BN 8 /*!< Absolute maximum number of bursts. */
92 #endif
93 
94 #ifndef LHCI_ENABLE_VS
95 #define LHCI_ENABLE_VS 1 /*!< Enable vendor specific command processing. */
96 #endif
97 
98 /*** Scheduler ***/
99 
100 #ifndef SCH_RM_MAX_RSVN
101 #define SCH_RM_MAX_RSVN (LL_MAX_CONN + LL_MAX_ADV_SETS + LL_MAX_CIG + LL_MAX_BIG) /*!< Maximum number of reservations (maximum is 32). */
102 #endif
103 
104 /*** Baseband ***/
105 
106 #ifndef BB_DATA_PLD_MAX_LEN
107 #define BB_DATA_PLD_MAX_LEN 251 /*!< Maximum data channel payload length (valid range 27 to 251, exclude MIC). */
108 #endif
109 
110 #ifndef BB_ADV_PLD_MAX_LEN
111 #define BB_ADV_PLD_MAX_LEN 255 /*!< Maximum advertising channel payload length (valid range 95 to 255). */
112 #endif
113 
114 #ifndef BB_FIXED_DATA_PKT_LEN
115 #define BB_FIXED_DATA_PKT_LEN 0 /*!< Fixed packet length required for BB data receive buffers (0 to disable). */
116 #endif
117 
118 #ifndef BB_FIXED_ADVB_PKT_LEN
119 #define BB_FIXED_ADVB_PKT_LEN 0 /*!< Fixed packet length required for BB advertisement receive buffers (0 to disable). */
120 #endif
121 
122 #ifndef BB_DATA_PDU_TAILROOM
123 #define BB_DATA_PDU_TAILROOM 4 /*!< Extra byte allocation required for BB operations (i.e. MIC). */
124 #endif
125 
126 #ifndef BB_ENABLE_INLINE_ENC_TX
127 #define BB_ENABLE_INLINE_ENC_TX 0 /*!< Enable inline encryption mode. Not available for all projects. */
128 #endif
129 
130 #ifndef BB_ENABLE_INLINE_DEC_RX
131 #define BB_ENABLE_INLINE_DEC_RX 0 /*!< Enable inline decryption mode. Not available for all projects. */
132 #endif
133 
134 #ifndef BB_SYM_PHY_REQ
135 #define BB_SYM_PHY_REQ 0 /*!< Symmetric PHY required on connections. */
136 #endif
137 
138 #ifdef __cplusplus
139 };
140 #endif
141 
142 #endif /* CFG_MAC_BLE_H */
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.