ADuCM302x Device Drivers API Reference Manual
Release 3.1.2.0
adi_flash_config.h
1
50
#ifndef ADI_FLASH_CONFIG_H
51
#define ADI_FLASH_CONFIG_H
52
#include <adi_global_config.h>
53
60
/****SETTINGS THAT LIVE IN FEE INTERRUPT ENABLE (IEN) REGISTER****/
61
62
69
#define ADI_FEE_CFG_ECC_ERROR_RESPONSE (1u)
70
77
#if defined(__ADUCM4x50__)
78
#define ADI_FEE_CFG_ECC_CORRECTION_RESPONSE (0u)
79
#endif
80
81
82
/****SETTINGS THAT LIVE IN FEE TIME PARAMETER 0 (TIME_PARAM0) REGISTER****/
83
84
85
/* It is recommended to NOT MODIFY flash timing parameters without keen insight and caution */
92
#define ADI_FEE_CFG_PARAM0_TNVH1 (0xbu)
93
100
#define ADI_FEE_CFG_PARAM0_TERASE (0x9u)
101
108
#define ADI_FEE_CFG_PARAM0_TRCV (0x9u)
109
116
#define ADI_FEE_CFG_PARAM0_TNVH (0x5u)
117
124
#if defined(__ADUCM302x__)
125
#define ADI_FEE_CFG_PARAM0_TPROG (0x5u)
126
#elif defined(__ADUCM4x50__)
127
#define ADI_FEE_CFG_PARAM0_TPROG (0x0u)
128
#else
129
#error Flash Driver is not ported for this processor
130
#endif
131
137
#define ADI_FEE_CFG_PARAM0_TPGS (0x9u)
138
145
#define ADI_FEE_CFG_PARAM0_TNVS (0x5u)
146
154
#define ADI_FEE_CFG_PARAM0_CLKDIV (0x0u)
155
156
157
158
/****SETTINGS THAT LIVE IN FEE TIME PARAMETER 1 (TIME_PARAM1) REGISTER****/
159
160
161
/* It is recommended to NOT MODIFY flash timing parameters without keen insight and caution */
168
#if defined (__ADUCM4x50__)
169
#define ADI_FEE_CFG_PARAM1_WAITESTATES (0x0u)
170
#endif
171
177
#define ADI_FEE_CFG_PARAM1_TWK (0x4u)
178
179
180
181
/****SETTINGS THAT LIVE IN FEE SYSTEM ABOUT ENABLE (ABOUT_EN_XX) REGISTERS****/
182
183
193
#define ADI_FEE_CFG_ABORT_EN_LO (0x0u)
194
204
#define ADI_FEE_CFG_ABORT_EN_HI (0x0u)
205
206
207
208
/****SETTINGS THAT LIVE IN ECC CONFIG REGISTER (ECC_CFG) REGISTER****/
209
210
214
#define ADI_FEE_CFG_ECC_START_PAGE (0u)
215
221
#define ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE (1u)
222
228
#define ADI_FEE_CFG_ENABLE_ECC (1u)
229
230
231
232
/************* Flash Driver Configuration Settings Checkers ***************/
233
234
235
236
/* IEN CHECKS */
237
#if ((ADI_FEE_CFG_ECC_ERROR_RESPONSE < 0u) || (ADI_FEE_CFG_ECC_ERROR_RESPONSE > 2u))
238
#error "ADI_FEE_CFG_ECC_ERROR_RESPONSE should be in the range 0-2."
239
#endif
240
#if ((ADI_FEE_CFG_ECC_CORRECTION_RESPONSE < 0u) || (ADI_FEE_CFG_ECC_CORRECTION_RESPONSE > 2u))
241
#error "ADI_FEE_CFG_ECC_CORRECTION_RESPONSE should be in the range 0-2."
242
#endif
243
244
245
246
/* PARAM0 CHECKS */
247
#if ((ADI_FEE_CFG_PARAM0_TNVH1 < 0u) || (ADI_FEE_CFG_PARAM0_TNVH1 > 15u))
248
#error "ADI_FEE_CFG_PARAM0_TNVH1 should be in the range 0-15."
249
#endif
250
#if ((ADI_FEE_CFG_PARAM0_TERASE < 0u) || (ADI_FEE_CFG_PARAM0_TERASE > 15u))
251
#error "ADI_FEE_CFG_PARAM0_TERASE should be in the range 0-15."
252
#endif
253
#if ((ADI_FEE_CFG_PARAM0_TRCV < 0u) || (ADI_FEE_CFG_PARAM0_TRCV > 15u))
254
#error "ADI_FEE_CFG_PARAM0_TRCV should be in the range 0-15."
255
#endif
256
#if ((ADI_FEE_CFG_PARAM0_TNVH1 < 0u) || (ADI_FEE_CFG_PARAM0_TNVH1 > 15u))
257
#error "ADI_FEE_CFG_PARAM0_TNVH1 should be in the range 0-15."
258
#endif
259
#if ((ADI_FEE_CFG_PARAM0_TPROG < 0u) || (ADI_FEE_CFG_PARAM0_TPROG > 15u))
260
#error "ADI_FEE_CFG_PARAM0_TPROG should be in the range 0-15."
261
#endif
262
#if ((ADI_FEE_CFG_PARAM0_TPGS < 0u) || (ADI_FEE_CFG_PARAM0_TPGS > 15u))
263
#error "ADI_FEE_CFG_PARAM0_TPGS should be in the range 0-15."
264
#endif
265
#if ((ADI_FEE_CFG_PARAM0_TNVS < 0u) || (ADI_FEE_CFG_PARAM0_TNVS > 15u))
266
#error "ADI_FEE_CFG_PARAM0_TNVS should be in the range 0-15."
267
#endif
268
#if ((ADI_FEE_CFG_PARAM0_CLKDIV < 0u) || (ADI_FEE_CFG_PARAM0_CLKDIV > 1u))
269
#error "ADI_FEE_CFG_PARAM0_CLKDIV should be in the range 0-1."
270
#endif
271
272
273
274
/* PARAM1 CHECKS */
275
#if ((ADI_FEE_CFG_PARAM1_WAITESTATES < 0u) || (ADI_FEE_CFG_PARAM1_WAITESTATES > 4u))
276
#error "ADI_FEE_CFG_PARAM1_WAITESTATES should be in the range 0-4."
277
#endif
278
#if ((ADI_FEE_CFG_PARAM1_TWK < 0u) || (ADI_FEE_CFG_PARAM1_TWK > 15u))
279
#error "ADI_FEE_CFG_PARAM1_TWK should be in the range 0-15."
280
#endif
281
282
283
284
/* ABORT_EN_XX CHECKS */
285
#if ((ADI_FEE_CFG_ABORT_EN_LO < 0u) || (ADI_FEE_CFG_ABORT_EN_LO > 0XFFFFu))
286
#error "ADI_FEE_CFG_ABORT_EN_LO should be in 32-bit range."
287
#endif
288
#if ((ADI_FEE_CFG_ABORT_EN_HI < 0u) || (ADI_FEE_CFG_ABORT_EN_HI > 0XFFFFu))
289
#error "ADI_FEE_CFG_ABORT_EN_HI should be in 32-bit range."
290
#endif
291
292
293
294
/* ECC_CFG CHECKS */
295
#if (((ADI_FEE_CFG_ECC_START_PAGE >> 8u) << 8) != ADI_FEE_CFG_ECC_START_PAGE)
296
#error "ADI_FEE_CFG_ECC_START_PAGE has invalid bits set in lower 8-bits."
297
#endif
298
#if ((ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE != 0u) && (ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE != 1u))
299
#error "ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE should be 1 or 0."
300
#endif
301
#if ((ADI_FEE_CFG_ENABLE_ECC != 0u) && (ADI_FEE_CFG_ENABLE_ECC != 1u))
302
#error "ADI_FEE_CFG_ENABLE_ECC should be 1 or 0."
303
#endif
304
307
#endif
/* ADI_FLASH_CONFIG_H */
Include
config
adi_flash_config.h
Generated on Mon Aug 6 2018 21:48:22 for ADuCM302x Device Drivers API Reference Manual by
1.8.13