Statistics
| Branch: | Tag: | Revision:

mongoose / examples / nRF52 / http / config / sdk_config.h @ eaef5bd1

History | View | Annotate | Download (8.14 KB)

1
/* Copyright (c) 2013 Nordic Semiconductor. All Rights Reserved.
2
 *
3
 * The information contained herein is property of Nordic Semiconductor ASA.
4
 * Terms and conditions of usage are described in detail in NORDIC
5
 * SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT.
6
 *
7
 * Licensees are granted free, non-transferable use of the information. NO
8
 * WARRANTY of ANY KIND is provided. This heading must NOT be removed from
9
 * the file.
10
 *
11
 */
12
#ifndef SDK_CONFIG_H__
13
#define SDK_CONFIG_H__
14

    
15
/**
16
 * @defgroup sdk_config SDK Configuration
17
 * @{
18
 * @ingroup sdk_common
19
 * @{
20
 * @details All parameters that allow configuring/tuning the SDK based on application/ use case
21
 *          are defined here.
22
 */
23

    
24

    
25
/**
26
 * @defgroup mem_manager_config Memory Manager Configuration
27
 * @{
28
 * @addtogroup sdk_config
29
 * @{
30
 * @details This section defines configuration of memory manager module.
31
 */
32

    
33
/**
34
 * @brief Maximum memory blocks identified as 'small' blocks.
35
 *
36
 * @details Maximum memory blocks identified as 'small' blocks.
37
 *          Minimum value : 0 (Setting to 0 disables all 'small' blocks)
38
 *          Maximum value : 255
39
 *          Dependencies  : None.
40
 */
41
#define  MEMORY_MANAGER_SMALL_BLOCK_COUNT                  8
42

    
43
/**
44
 * @brief Size of each memory blocks identified as 'small' block.
45
 *
46
 * @details Size of each memory blocks identified as 'small' block.
47
 *          Memory block are recommended to be word-sized.
48
 *          Minimum value : 32
49
 *          Maximum value : A value less than the next pool size. If only small pool is used, this
50
 *                          can be any value based on availability of RAM.
51
 *          Dependencies  : MEMORY_MANAGER_SMALL_BLOCK_COUNT is non-zero.
52
 */
53
#define  MEMORY_MANAGER_SMALL_BLOCK_SIZE                   128
54

    
55
/**
56
 * @brief Maximum memory blocks identified as 'medium' blocks.
57
 *
58
 * @details Maximum memory blocks identified as 'medium' blocks.
59
 *          Minimum value : 0 (Setting to 0 disables all 'medium' blocks)
60
 *          Maximum value : 255
61
 *          Dependencies  : None.
62
 */
63
#define  MEMORY_MANAGER_MEDIUM_BLOCK_COUNT                 4
64

    
65
/**
66
 * @brief Size of each memory blocks identified as 'medium' block.
67
 *
68
 * @details Size of each memory blocks identified as 'medium' block.
69
 *          Memory block are recommended to be word-sized.
70
 *          Minimum value : A value greater than the small pool size if defined, else 32.
71
 *          Maximum value : A value less than the next pool size. If only medium pool is used, this
72
 *                          can be any value based on availability of RAM.
73
 *          Dependencies  : MEMORY_MANAGER_MEDIUM_BLOCK_COUNT is non-zero.
74
 */
75
#define  MEMORY_MANAGER_MEDIUM_BLOCK_SIZE                  256
76

    
77
/**
78
 * @brief Maximum memory blocks identified as 'medium' blocks.
79
 *
80
 * @details Maximum memory blocks identified as 'medium' blocks.
81
 *          Minimum value : 0 (Setting to 0 disables all 'large' blocks)
82
 *          Maximum value : 255
83
 *          Dependencies  : None.
84
 */
85
#define  MEMORY_MANAGER_LARGE_BLOCK_COUNT                  3
86

    
87
/**
88
 * @brief Size of each memory blocks identified as 'medium' block.
89
 *
90
 * @details Size of each memory blocks identified as 'medium' block.
91
 *          Memory block are recommended to be word-sized.
92
 *          Minimum value : A value greater than the small &/ medium pool size if defined, else 32.
93
 *          Maximum value : Any value based on availability of RAM.
94
 *          Dependencies  : MEMORY_MANAGER_MEDIUM_BLOCK_COUNT is non-zero.
95
 */
96
#define  MEMORY_MANAGER_LARGE_BLOCK_SIZE                   1024
97

    
98
/**
99
 * @brief Disable debug trace in the module.
100
 *
101
 * @details Set this define to 1 to enable debug trace in the module, else set to 0.
102
 *          Possible values : 0 or 1.
103
 *          Dependencies    : ENABLE_DEBUG_LOG_SUPPORT. If this flag is not defined, no
104
 *                            trace is observed even if this define is set to 1.
105
 */
106
#define MEM_MANAGER_ENABLE_LOGS                           0
107

    
108
/**
109
 * @brief Disables API parameter checks in the module.
110
 *
111
 * @details Set this define to 1 to disable checks on API parameters in the module.
112
 *          API parameter checks are added to ensure right parameters are passed to the
113
 *          module. These checks are useful during development phase but be redundant
114
 *          once application is developed. Disabling this can result in some code saving.
115
 *          Possible values : 0 or 1.
116
 *          Dependencies    : None.
117
 */
118
#define MEM_MANAGER_DISABLE_API_PARAM_CHECK                0
119
/** @} */
120
/** @} */
121

    
122

    
123
/**
124
 * @defgroup iot_context_manager Context Manager Configurations.
125
 * @{
126
 * @addtogroup iot_config
127
 * @{
128
 * @details This section defines configuration of Context Manager.
129
 */
130

    
131
/**
132
 * @brief Disable debug trace in the module.
133
 *
134
 * @details Set this define to 1 to enable debug trace in the module, else set to 0.
135
 *          Possible values : 0 or 1.
136
 *          Dependencies    : ENABLE_DEBUG_LOG_SUPPORT. If this flag is not defined, no
137
 *                            trace is observed even if this define is set to 1.
138
 */
139
#define IOT_CONTEXT_MANAGER_ENABLE_LOGS                     0
140

    
141
/**
142
 * @brief Disables API parameter checks in the module.
143
 *
144
 * @details Set this define to 1 to disable checks on API parameters in the module.
145
 *          API parameter checks are added to ensure right parameters are passed to the
146
 *          module. These checks are useful during development phase but be redundant
147
 *          once application is developed. Disabling this can result in some code saving.
148
 *          Possible values : 0 or 1.
149
 *          Dependencies    : None.
150
 */
151
#define IOT_CONTEXT_MANAGER_DISABLE_API_PARAM_CHECK        0
152

    
153
/**
154
 * @brief Maximum number of supported context identifiers.
155
 *
156
 * @details Maximum value of 16 is preferable to correct decompression.
157
 *          Minimum value : 1
158
 *          Maximum value : 16
159
 *          Dependencies  : None.
160
 */
161
#define  IOT_CONTEXT_MANAGER_MAX_CONTEXTS                  16
162

    
163
/**
164
 * @brief Maximum number of supported context's table.
165
 *
166
 * @details If value is equal to BLE_IPSP_MAX_CHANNELS then all interface will have
167
 *          its own table which is preferable.
168
 *          Minimum value : 1
169
 *          Maximum value : BLE_IPSP_MAX_CHANNELS
170
 *          Dependencies  : None.
171
 */
172
#define  IOT_CONTEXT_MANAGER_MAX_TABLES                    1
173
/** @} */
174
/** @} */
175

    
176

    
177
/**
178
 * @defgroup lwip_nrf_driver nRF lwIP driver
179
 * @{
180
 * @addtogroup iot_config
181
 * @{
182
 * @details This section defines configuration of nRF lwIP driver.
183
 */
184
 
185
/**
186
 * @brief Disable debug trace in the module.
187
 *
188
 * @details Set this define to 1 to enable debug trace in the module, else set to 0.
189
 *          Possible values : 0 or 1.
190
 *          Dependencies    : ENABLE_DEBUG_LOG_SUPPORT. If this flag is not defined, no
191
 *                            trace is observed even if this define is set to 1.
192
 */
193
#define NRF_LWIP_DRIVER_ENABLE_LOGS                        0
194

    
195
/** @} */
196
/** @} */
197

    
198
/**
199
 * @defgroup iot_timer IoT SDK Timer
200
 * @{
201
 * @addtogroup iot_config
202
 * @{
203
 * @details This section defines configuration of the IoT Timer.
204
 */
205
 
206
/**
207
 * @brief Wall clock resolution in milliseconds.
208
 *
209
 * @details The wall clock of the IoT Timer module has to be updated from an external source at
210
 *          regular intervals. This define needs to be set to the interval between updates.
211
 *          Minimum value   : 1.
212
 *          Dependencies    : None.
213
 *
214
 */
215
#define IOT_TIMER_RESOLUTION_IN_MS                         100
216

    
217
/**
218
 * @brief Disables API parameter checks in the module.
219
 *
220
 * @details Set this define to 1 to disable checks on API parameters in the module.
221
 *          API parameter checks are added to ensure right parameters are passed to the
222
 *          module. These checks are useful during development phase but be redundant
223
 *          once application is developed. Disabling this can result in some code saving.
224
 *          Possible values : 0 or 1.
225
 *          Dependencies    : None.
226
 */
227
#define IOT_TIMER_DISABLE_API_PARAM_CHECK                  0
228

    
229
/** @} */
230
/** @} */
231

    
232
#endif // SDK_CONFIG_H__