ADuCM4x50 Device Drivers API Reference Manual
Release 4.0.0.0
adi_flash_config.h
1
15
#ifndef ADI_FLASH_CONFIG_H
16
#define ADI_FLASH_CONFIG_H
17
#include <adi_global_config.h>
18
25
/****SETTINGS THAT LIVE IN FEE INTERRUPT ENABLE (IEN) REGISTER****/
26
27
34
#define ADI_FEE_CFG_ECC_ERROR_RESPONSE (1u)
35
42
#if defined(__ADUCM4x50__)
43
#define ADI_FEE_CFG_ECC_CORRECTION_RESPONSE (0u)
44
#endif
45
46
47
/****SETTINGS THAT LIVE IN FEE TIME PARAMETER 0 (TIME_PARAM0) REGISTER****/
48
49
50
/* It is recommended to NOT MODIFY flash timing parameters without keen insight and caution */
57
#define ADI_FEE_CFG_PARAM0_TNVH1 (0xbu)
58
65
#define ADI_FEE_CFG_PARAM0_TERASE (0x9u)
66
73
#define ADI_FEE_CFG_PARAM0_TRCV (0x9u)
74
81
#define ADI_FEE_CFG_PARAM0_TNVH (0x5u)
82
89
#if defined(__ADUCM302x__)
90
#define ADI_FEE_CFG_PARAM0_TPROG (0x5u)
91
#elif defined(__ADUCM4x50__)
92
#define ADI_FEE_CFG_PARAM0_TPROG (0x0u)
93
#else
94
#error Flash Driver is not ported for this processor
95
#endif
96
102
#define ADI_FEE_CFG_PARAM0_TPGS (0x9u)
103
110
#define ADI_FEE_CFG_PARAM0_TNVS (0x5u)
111
119
#define ADI_FEE_CFG_PARAM0_CLKDIV (0x0u)
120
121
122
123
/****SETTINGS THAT LIVE IN FEE TIME PARAMETER 1 (TIME_PARAM1) REGISTER****/
124
125
126
/* It is recommended to NOT MODIFY flash timing parameters without keen insight and caution */
133
#if defined (__ADUCM4x50__)
134
#define ADI_FEE_CFG_PARAM1_WAITESTATES (0x0u)
135
#endif
136
142
#define ADI_FEE_CFG_PARAM1_TWK (0x4u)
143
144
145
146
/****SETTINGS THAT LIVE IN FEE SYSTEM ABOUT ENABLE (ABOUT_EN_XX) REGISTERS****/
147
148
158
#define ADI_FEE_CFG_ABORT_EN_LO (0x0u)
159
169
#define ADI_FEE_CFG_ABORT_EN_HI (0x0u)
170
171
172
173
/****SETTINGS THAT LIVE IN ECC CONFIG REGISTER (ECC_CFG) REGISTER****/
174
175
179
#define ADI_FEE_CFG_ECC_START_PAGE (0u)
180
186
#define ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE (1u)
187
193
#define ADI_FEE_CFG_ENABLE_ECC (1u)
194
195
196
197
/************* Flash Driver Configuration Settings Checkers ***************/
198
199
200
201
/* IEN CHECKS */
202
#if ((ADI_FEE_CFG_ECC_ERROR_RESPONSE < 0u) || (ADI_FEE_CFG_ECC_ERROR_RESPONSE > 2u))
203
#error "ADI_FEE_CFG_ECC_ERROR_RESPONSE should be in the range 0-2."
204
#endif
205
#if ((ADI_FEE_CFG_ECC_CORRECTION_RESPONSE < 0u) || (ADI_FEE_CFG_ECC_CORRECTION_RESPONSE > 2u))
206
#error "ADI_FEE_CFG_ECC_CORRECTION_RESPONSE should be in the range 0-2."
207
#endif
208
209
210
211
/* PARAM0 CHECKS */
212
#if ((ADI_FEE_CFG_PARAM0_TNVH1 < 0u) || (ADI_FEE_CFG_PARAM0_TNVH1 > 15u))
213
#error "ADI_FEE_CFG_PARAM0_TNVH1 should be in the range 0-15."
214
#endif
215
#if ((ADI_FEE_CFG_PARAM0_TERASE < 0u) || (ADI_FEE_CFG_PARAM0_TERASE > 15u))
216
#error "ADI_FEE_CFG_PARAM0_TERASE should be in the range 0-15."
217
#endif
218
#if ((ADI_FEE_CFG_PARAM0_TRCV < 0u) || (ADI_FEE_CFG_PARAM0_TRCV > 15u))
219
#error "ADI_FEE_CFG_PARAM0_TRCV should be in the range 0-15."
220
#endif
221
#if ((ADI_FEE_CFG_PARAM0_TNVH1 < 0u) || (ADI_FEE_CFG_PARAM0_TNVH1 > 15u))
222
#error "ADI_FEE_CFG_PARAM0_TNVH1 should be in the range 0-15."
223
#endif
224
#if ((ADI_FEE_CFG_PARAM0_TPROG < 0u) || (ADI_FEE_CFG_PARAM0_TPROG > 15u))
225
#error "ADI_FEE_CFG_PARAM0_TPROG should be in the range 0-15."
226
#endif
227
#if ((ADI_FEE_CFG_PARAM0_TPGS < 0u) || (ADI_FEE_CFG_PARAM0_TPGS > 15u))
228
#error "ADI_FEE_CFG_PARAM0_TPGS should be in the range 0-15."
229
#endif
230
#if ((ADI_FEE_CFG_PARAM0_TNVS < 0u) || (ADI_FEE_CFG_PARAM0_TNVS > 15u))
231
#error "ADI_FEE_CFG_PARAM0_TNVS should be in the range 0-15."
232
#endif
233
#if ((ADI_FEE_CFG_PARAM0_CLKDIV < 0u) || (ADI_FEE_CFG_PARAM0_CLKDIV > 1u))
234
#error "ADI_FEE_CFG_PARAM0_CLKDIV should be in the range 0-1."
235
#endif
236
237
238
239
/* PARAM1 CHECKS */
240
#if ((ADI_FEE_CFG_PARAM1_WAITESTATES < 0u) || (ADI_FEE_CFG_PARAM1_WAITESTATES > 4u))
241
#error "ADI_FEE_CFG_PARAM1_WAITESTATES should be in the range 0-4."
242
#endif
243
#if ((ADI_FEE_CFG_PARAM1_TWK < 0u) || (ADI_FEE_CFG_PARAM1_TWK > 15u))
244
#error "ADI_FEE_CFG_PARAM1_TWK should be in the range 0-15."
245
#endif
246
247
248
249
/* ABORT_EN_XX CHECKS */
250
#if ((ADI_FEE_CFG_ABORT_EN_LO < 0u) || (ADI_FEE_CFG_ABORT_EN_LO > 0XFFFFu))
251
#error "ADI_FEE_CFG_ABORT_EN_LO should be in 32-bit range."
252
#endif
253
#if ((ADI_FEE_CFG_ABORT_EN_HI < 0u) || (ADI_FEE_CFG_ABORT_EN_HI > 0XFFFFu))
254
#error "ADI_FEE_CFG_ABORT_EN_HI should be in 32-bit range."
255
#endif
256
257
258
259
/* ECC_CFG CHECKS */
260
#if (((ADI_FEE_CFG_ECC_START_PAGE >> 8u) << 8) != ADI_FEE_CFG_ECC_START_PAGE)
261
#error "ADI_FEE_CFG_ECC_START_PAGE has invalid bits set in lower 8-bits."
262
#endif
263
#if ((ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE != 0u) && (ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE != 1u))
264
#error "ADI_FEE_CFG_ENABLE_ECC_FOR_INFO_SPACE should be 1 or 0."
265
#endif
266
#if ((ADI_FEE_CFG_ENABLE_ECC != 0u) && (ADI_FEE_CFG_ENABLE_ECC != 1u))
267
#error "ADI_FEE_CFG_ENABLE_ECC should be 1 or 0."
268
#endif
269
272
#endif
/* ADI_FLASH_CONFIG_H */
Include
config
adi_flash_config.h
Generated on Tue Aug 31 2021 19:04:42 for ADuCM4x50 Device Drivers API Reference Manual by
1.8.15