1 //*****************************************************************************
2 //
3 // hw_flash.h - Macros used when accessing the flash controller.
4 //
5 // Copyright (c) 2005-2017 Texas Instruments Incorporated.  All rights reserved.
6 // Software License Agreement
7 //
8 //   Redistribution and use in source and binary forms, with or without
9 //   modification, are permitted provided that the following conditions
10 //   are met:
11 //
12 //   Redistributions of source code must retain the above copyright
13 //   notice, this list of conditions and the following disclaimer.
14 //
15 //   Redistributions in binary form must reproduce the above copyright
16 //   notice, this list of conditions and the following disclaimer in the
17 //   documentation and/or other materials provided with the
18 //   distribution.
19 //
20 //   Neither the name of Texas Instruments Incorporated nor the names of
21 //   its contributors may be used to endorse or promote products derived
22 //   from this software without specific prior written permission.
23 //
24 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
25 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
26 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
27 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
28 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
29 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 //
36 //*****************************************************************************
37 
38 #ifndef __HW_FLASH_H__
39 #define __HW_FLASH_H__
40 
41 //*****************************************************************************
42 //
43 // The following are defines for the FLASH register offsets.
44 //
45 //*****************************************************************************
46 #define FLASH_FMA               0x400FD000  // Flash Memory Address
47 #define FLASH_FMD               0x400FD004  // Flash Memory Data
48 #define FLASH_FMC               0x400FD008  // Flash Memory Control
49 #define FLASH_FCRIS             0x400FD00C  // Flash Controller Raw Interrupt
50                                             // Status
51 #define FLASH_FCIM              0x400FD010  // Flash Controller Interrupt Mask
52 #define FLASH_FCMISC            0x400FD014  // Flash Controller Masked
53                                             // Interrupt Status and Clear
54 #define FLASH_FMC2              0x400FD020  // Flash Memory Control 2
55 #define FLASH_FWBVAL            0x400FD030  // Flash Write Buffer Valid
56 #define FLASH_FLPEKEY           0x400FD03C  // Flash Program/Erase Key
57 #define FLASH_FWBN              0x400FD100  // Flash Write Buffer n
58 #define FLASH_PP                0x400FDFC0  // Flash Peripheral Properties
59 #define FLASH_FSIZE             0x400FDFC0  // Flash Size
60 #define FLASH_SSIZE             0x400FDFC4  // SRAM Size
61 #define FLASH_CONF              0x400FDFC8  // Flash Configuration Register
62 #define FLASH_ROMSWMAP          0x400FDFCC  // ROM Software Map
63 #define FLASH_DMASZ             0x400FDFD0  // Flash DMA Address Size
64 #define FLASH_DMAST             0x400FDFD4  // Flash DMA Starting Address
65 #define FLASH_RVP               0x400FE0D4  // Reset Vector Pointer
66 #define FLASH_RMCTL             0x400FE0F0  // ROM Control
67 #define FLASH_BOOTCFG           0x400FE1D0  // Boot Configuration
68 #define FLASH_USERREG0          0x400FE1E0  // User Register 0
69 #define FLASH_USERREG1          0x400FE1E4  // User Register 1
70 #define FLASH_USERREG2          0x400FE1E8  // User Register 2
71 #define FLASH_USERREG3          0x400FE1EC  // User Register 3
72 #define FLASH_FMPRE0            0x400FE200  // Flash Memory Protection Read
73                                             // Enable 0
74 #define FLASH_FMPRE1            0x400FE204  // Flash Memory Protection Read
75                                             // Enable 1
76 #define FLASH_FMPRE2            0x400FE208  // Flash Memory Protection Read
77                                             // Enable 2
78 #define FLASH_FMPRE3            0x400FE20C  // Flash Memory Protection Read
79                                             // Enable 3
80 #define FLASH_FMPRE4            0x400FE210  // Flash Memory Protection Read
81                                             // Enable 4
82 #define FLASH_FMPRE5            0x400FE214  // Flash Memory Protection Read
83                                             // Enable 5
84 #define FLASH_FMPRE6            0x400FE218  // Flash Memory Protection Read
85                                             // Enable 6
86 #define FLASH_FMPRE7            0x400FE21C  // Flash Memory Protection Read
87                                             // Enable 7
88 #define FLASH_FMPRE8            0x400FE220  // Flash Memory Protection Read
89                                             // Enable 8
90 #define FLASH_FMPRE9            0x400FE224  // Flash Memory Protection Read
91                                             // Enable 9
92 #define FLASH_FMPRE10           0x400FE228  // Flash Memory Protection Read
93                                             // Enable 10
94 #define FLASH_FMPRE11           0x400FE22C  // Flash Memory Protection Read
95                                             // Enable 11
96 #define FLASH_FMPRE12           0x400FE230  // Flash Memory Protection Read
97                                             // Enable 12
98 #define FLASH_FMPRE13           0x400FE234  // Flash Memory Protection Read
99                                             // Enable 13
100 #define FLASH_FMPRE14           0x400FE238  // Flash Memory Protection Read
101                                             // Enable 14
102 #define FLASH_FMPRE15           0x400FE23C  // Flash Memory Protection Read
103                                             // Enable 15
104 #define FLASH_FMPPE0            0x400FE400  // Flash Memory Protection Program
105                                             // Enable 0
106 #define FLASH_FMPPE1            0x400FE404  // Flash Memory Protection Program
107                                             // Enable 1
108 #define FLASH_FMPPE2            0x400FE408  // Flash Memory Protection Program
109                                             // Enable 2
110 #define FLASH_FMPPE3            0x400FE40C  // Flash Memory Protection Program
111                                             // Enable 3
112 #define FLASH_FMPPE4            0x400FE410  // Flash Memory Protection Program
113                                             // Enable 4
114 #define FLASH_FMPPE5            0x400FE414  // Flash Memory Protection Program
115                                             // Enable 5
116 #define FLASH_FMPPE6            0x400FE418  // Flash Memory Protection Program
117                                             // Enable 6
118 #define FLASH_FMPPE7            0x400FE41C  // Flash Memory Protection Program
119                                             // Enable 7
120 #define FLASH_FMPPE8            0x400FE420  // Flash Memory Protection Program
121                                             // Enable 8
122 #define FLASH_FMPPE9            0x400FE424  // Flash Memory Protection Program
123                                             // Enable 9
124 #define FLASH_FMPPE10           0x400FE428  // Flash Memory Protection Program
125                                             // Enable 10
126 #define FLASH_FMPPE11           0x400FE42C  // Flash Memory Protection Program
127                                             // Enable 11
128 #define FLASH_FMPPE12           0x400FE430  // Flash Memory Protection Program
129                                             // Enable 12
130 #define FLASH_FMPPE13           0x400FE434  // Flash Memory Protection Program
131                                             // Enable 13
132 #define FLASH_FMPPE14           0x400FE438  // Flash Memory Protection Program
133                                             // Enable 14
134 #define FLASH_FMPPE15           0x400FE43C  // Flash Memory Protection Program
135                                             // Enable 15
136 
137 //*****************************************************************************
138 //
139 // The following are defines for the bit fields in the FLASH_FMA register.
140 //
141 //*****************************************************************************
142 #define FLASH_FMA_OFFSET_M      0x000FFFFF  // Address Offset
143 #define FLASH_FMA_OFFSET_S      0
144 
145 //*****************************************************************************
146 //
147 // The following are defines for the bit fields in the FLASH_FMD register.
148 //
149 //*****************************************************************************
150 #define FLASH_FMD_DATA_M        0xFFFFFFFF  // Data Value
151 #define FLASH_FMD_DATA_S        0
152 
153 //*****************************************************************************
154 //
155 // The following are defines for the bit fields in the FLASH_FMC register.
156 //
157 //*****************************************************************************
158 #define FLASH_FMC_WRKEY         0xA4420000  // FLASH write key
159 #define FLASH_FMC_COMT          0x00000008  // Commit Register Value
160 #define FLASH_FMC_MERASE        0x00000004  // Mass Erase Flash Memory
161 #define FLASH_FMC_ERASE         0x00000002  // Erase a Page of Flash Memory
162 #define FLASH_FMC_WRITE         0x00000001  // Write a Word into Flash Memory
163 
164 //*****************************************************************************
165 //
166 // The following are defines for the bit fields in the FLASH_FCRIS register.
167 //
168 //*****************************************************************************
169 #define FLASH_FCRIS_PROGRIS     0x00002000  // Program Verify Error Raw
170                                             // Interrupt Status
171 #define FLASH_FCRIS_ERRIS       0x00000800  // Erase Verify Error Raw Interrupt
172                                             // Status
173 #define FLASH_FCRIS_INVDRIS     0x00000400  // Invalid Data Raw Interrupt
174                                             // Status
175 #define FLASH_FCRIS_VOLTRIS     0x00000200  // Pump Voltage Raw Interrupt
176                                             // Status
177 #define FLASH_FCRIS_ERIS        0x00000004  // EEPROM Raw Interrupt Status
178 #define FLASH_FCRIS_PRIS        0x00000002  // Programming Raw Interrupt Status
179 #define FLASH_FCRIS_ARIS        0x00000001  // Access Raw Interrupt Status
180 
181 //*****************************************************************************
182 //
183 // The following are defines for the bit fields in the FLASH_FCIM register.
184 //
185 //*****************************************************************************
186 #define FLASH_FCIM_PROGMASK     0x00002000  // PROGVER Interrupt Mask
187 #define FLASH_FCIM_ERMASK       0x00000800  // ERVER Interrupt Mask
188 #define FLASH_FCIM_INVDMASK     0x00000400  // Invalid Data Interrupt Mask
189 #define FLASH_FCIM_VOLTMASK     0x00000200  // VOLT Interrupt Mask
190 #define FLASH_FCIM_EMASK        0x00000004  // EEPROM Interrupt Mask
191 #define FLASH_FCIM_PMASK        0x00000002  // Programming Interrupt Mask
192 #define FLASH_FCIM_AMASK        0x00000001  // Access Interrupt Mask
193 
194 //*****************************************************************************
195 //
196 // The following are defines for the bit fields in the FLASH_FCMISC register.
197 //
198 //*****************************************************************************
199 #define FLASH_FCMISC_PROGMISC   0x00002000  // PROGVER Masked Interrupt Status
200                                             // and Clear
201 #define FLASH_FCMISC_ERMISC     0x00000800  // ERVER Masked Interrupt Status
202                                             // and Clear
203 #define FLASH_FCMISC_INVDMISC   0x00000400  // Invalid Data Masked Interrupt
204                                             // Status and Clear
205 #define FLASH_FCMISC_VOLTMISC   0x00000200  // VOLT Masked Interrupt Status and
206                                             // Clear
207 #define FLASH_FCMISC_EMISC      0x00000004  // EEPROM Masked Interrupt Status
208                                             // and Clear
209 #define FLASH_FCMISC_PMISC      0x00000002  // Programming Masked Interrupt
210                                             // Status and Clear
211 #define FLASH_FCMISC_AMISC      0x00000001  // Access Masked Interrupt Status
212                                             // and Clear
213 
214 //*****************************************************************************
215 //
216 // The following are defines for the bit fields in the FLASH_FMC2 register.
217 //
218 //*****************************************************************************
219 #define FLASH_FMC2_WRKEY        0xA4420000  // FLASH write key
220 #define FLASH_FMC2_WRBUF        0x00000001  // Buffered Flash Memory Write
221 
222 //*****************************************************************************
223 //
224 // The following are defines for the bit fields in the FLASH_FWBVAL register.
225 //
226 //*****************************************************************************
227 #define FLASH_FWBVAL_FWB_M      0xFFFFFFFF  // Flash Memory Write Buffer
228 
229 //*****************************************************************************
230 //
231 // The following are defines for the bit fields in the FLASH_FLPEKEY register.
232 //
233 //*****************************************************************************
234 #define FLASH_FLPEKEY_PEKEY_M   0x0000FFFF  // Key Value
235 #define FLASH_FLPEKEY_PEKEY_S   0
236 
237 //*****************************************************************************
238 //
239 // The following are defines for the bit fields in the FLASH_FWBN register.
240 //
241 //*****************************************************************************
242 #define FLASH_FWBN_DATA_M       0xFFFFFFFF  // Data
243 
244 //*****************************************************************************
245 //
246 // The following are defines for the bit fields in the FLASH_PP register.
247 //
248 //*****************************************************************************
249 #define FLASH_PP_PFC            0x40000000  // Prefetch Buffer Mode
250 #define FLASH_PP_FMM            0x20000000  // Flash Mirror Mode
251 #define FLASH_PP_DFA            0x10000000  // DMA Flash Access
252 #define FLASH_PP_EESS_M         0x00780000  // EEPROM Sector Size of the
253                                             // physical bank
254 #define FLASH_PP_EESS_1KB       0x00000000  // 1 KB
255 #define FLASH_PP_EESS_2KB       0x00080000  // 2 KB
256 #define FLASH_PP_EESS_4KB       0x00100000  // 4 KB
257 #define FLASH_PP_EESS_8KB       0x00180000  // 8 KB
258 #define FLASH_PP_MAINSS_M       0x00070000  // Flash Sector Size of the
259                                             // physical bank
260 #define FLASH_PP_MAINSS_1KB     0x00000000  // 1 KB
261 #define FLASH_PP_MAINSS_2KB     0x00010000  // 2 KB
262 #define FLASH_PP_MAINSS_4KB     0x00020000  // 4 KB
263 #define FLASH_PP_MAINSS_8KB     0x00030000  // 8 KB
264 #define FLASH_PP_MAINSS_16KB    0x00040000  // 16 KB
265 #define FLASH_PP_SIZE_M         0x0000FFFF  // Flash Size
266 #define FLASH_PP_SIZE_512KB     0x000000FF  // 512 KB of Flash
267 #define FLASH_PP_SIZE_1MB       0x000001FF  // 1024 KB of Flash
268 
269 //*****************************************************************************
270 //
271 // The following are defines for the bit fields in the FLASH_FSIZE register.
272 //
273 //*****************************************************************************
274 #define FLASH_FSIZE_SIZE_M      0x0000FFFF  // Flash Size
275 #define FLASH_FSIZE_SIZE_32KB   0x0000000F  // 32 KB of Flash
276 #define FLASH_FSIZE_SIZE_64KB   0x0000001F  // 64 KB of Flash
277 #define FLASH_FSIZE_SIZE_128KB  0x0000003F  // 128 KB of Flash
278 #define FLASH_FSIZE_SIZE_256KB  0x0000007F  // 256 KB of Flash
279 
280 //*****************************************************************************
281 //
282 // The following are defines for the bit fields in the FLASH_SSIZE register.
283 //
284 //*****************************************************************************
285 #define FLASH_SSIZE_SIZE_M      0x0000FFFF  // SRAM Size
286 #define FLASH_SSIZE_SIZE_12KB   0x0000002F  // 12 KB of SRAM
287 #define FLASH_SSIZE_SIZE_24KB   0x0000005F  // 24 KB of SRAM
288 #define FLASH_SSIZE_SIZE_32KB   0x0000007F  // 32 KB of SRAM
289 #define FLASH_SSIZE_SIZE_256KB  0x000003FF  // 256 KB of SRAM
290 
291 //*****************************************************************************
292 //
293 // The following are defines for the bit fields in the FLASH_CONF register.
294 //
295 //*****************************************************************************
296 #define FLASH_CONF_FMME         0x40000000  // Flash Mirror Mode Enable
297 #define FLASH_CONF_SPFE         0x20000000  // Single Prefetch Mode Enable
298 #define FLASH_CONF_CLRTV        0x00100000  // Clear Valid Tags
299 #define FLASH_CONF_FPFON        0x00020000  // Force Prefetch On
300 #define FLASH_CONF_FPFOFF       0x00010000  // Force Prefetch Off
301 
302 //*****************************************************************************
303 //
304 // The following are defines for the bit fields in the FLASH_ROMSWMAP register.
305 //
306 //*****************************************************************************
307 #define FLASH_ROMSWMAP_SAFERTOS 0x00000001  // SafeRTOS Present
308 #define FLASH_ROMSWMAP_SW0EN_M  0x00000003  // ROM SW Region 0 Availability
309 #define FLASH_ROMSWMAP_SW0EN_NOTVIS                                           \
310                                 0x00000000  // Software region not available to
311                                             // the core
312 #define FLASH_ROMSWMAP_SW0EN_CORE                                             \
313                                 0x00000001  // Region available to core
314 #define FLASH_ROMSWMAP_SW1EN_M  0x0000000C  // ROM SW Region 1 Availability
315 #define FLASH_ROMSWMAP_SW1EN_NOTVIS                                           \
316                                 0x00000000  // Software region not available to
317                                             // the core
318 #define FLASH_ROMSWMAP_SW1EN_CORE                                             \
319                                 0x00000004  // Region available to core
320 #define FLASH_ROMSWMAP_SW2EN_M  0x00000030  // ROM SW Region 2 Availability
321 #define FLASH_ROMSWMAP_SW2EN_NOTVIS                                           \
322                                 0x00000000  // Software region not available to
323                                             // the core
324 #define FLASH_ROMSWMAP_SW2EN_CORE                                             \
325                                 0x00000010  // Region available to core
326 #define FLASH_ROMSWMAP_SW3EN_M  0x000000C0  // ROM SW Region 3 Availability
327 #define FLASH_ROMSWMAP_SW3EN_NOTVIS                                           \
328                                 0x00000000  // Software region not available to
329                                             // the core
330 #define FLASH_ROMSWMAP_SW3EN_CORE                                             \
331                                 0x00000040  // Region available to core
332 #define FLASH_ROMSWMAP_SW4EN_M  0x00000300  // ROM SW Region 4 Availability
333 #define FLASH_ROMSWMAP_SW4EN_NOTVIS                                           \
334                                 0x00000000  // Software region not available to
335                                             // the core
336 #define FLASH_ROMSWMAP_SW4EN_CORE                                             \
337                                 0x00000100  // Region available to core
338 #define FLASH_ROMSWMAP_SW5EN_M  0x00000C00  // ROM SW Region 5 Availability
339 #define FLASH_ROMSWMAP_SW5EN_NOTVIS                                           \
340                                 0x00000000  // Software region not available to
341                                             // the core
342 #define FLASH_ROMSWMAP_SW5EN_CORE                                             \
343                                 0x00000400  // Region available to core
344 #define FLASH_ROMSWMAP_SW6EN_M  0x00003000  // ROM SW Region 6 Availability
345 #define FLASH_ROMSWMAP_SW6EN_NOTVIS                                           \
346                                 0x00000000  // Software region not available to
347                                             // the core
348 #define FLASH_ROMSWMAP_SW6EN_CORE                                             \
349                                 0x00001000  // Region available to core
350 #define FLASH_ROMSWMAP_SW7EN_M  0x0000C000  // ROM SW Region 7 Availability
351 #define FLASH_ROMSWMAP_SW7EN_NOTVIS                                           \
352                                 0x00000000  // Software region not available to
353                                             // the core
354 #define FLASH_ROMSWMAP_SW7EN_CORE                                             \
355                                 0x00004000  // Region available to core
356 
357 //*****************************************************************************
358 //
359 // The following are defines for the bit fields in the FLASH_DMASZ register.
360 //
361 //*****************************************************************************
362 #define FLASH_DMASZ_SIZE_M      0x0003FFFF  // uDMA-accessible Memory Size
363 #define FLASH_DMASZ_SIZE_S      0
364 
365 //*****************************************************************************
366 //
367 // The following are defines for the bit fields in the FLASH_DMAST register.
368 //
369 //*****************************************************************************
370 #define FLASH_DMAST_ADDR_M      0x1FFFF800  // Contains the starting address of
371                                             // the flash region accessible by
372                                             // uDMA if the FLASHPP register DFA
373                                             // bit is set
374 #define FLASH_DMAST_ADDR_S      11
375 
376 //*****************************************************************************
377 //
378 // The following are defines for the bit fields in the FLASH_RVP register.
379 //
380 //*****************************************************************************
381 #define FLASH_RVP_RV_M          0xFFFFFFFF  // Reset Vector Pointer Address
382 #define FLASH_RVP_RV_S          0
383 
384 //*****************************************************************************
385 //
386 // The following are defines for the bit fields in the FLASH_RMCTL register.
387 //
388 //*****************************************************************************
389 #define FLASH_RMCTL_BA          0x00000001  // Boot Alias
390 
391 //*****************************************************************************
392 //
393 // The following are defines for the bit fields in the FLASH_BOOTCFG register.
394 //
395 //*****************************************************************************
396 #define FLASH_BOOTCFG_NW        0x80000000  // Not Written
397 #define FLASH_BOOTCFG_PORT_M    0x0000E000  // Boot GPIO Port
398 #define FLASH_BOOTCFG_PORT_A    0x00000000  // Port A
399 #define FLASH_BOOTCFG_PORT_B    0x00002000  // Port B
400 #define FLASH_BOOTCFG_PORT_C    0x00004000  // Port C
401 #define FLASH_BOOTCFG_PORT_D    0x00006000  // Port D
402 #define FLASH_BOOTCFG_PORT_E    0x00008000  // Port E
403 #define FLASH_BOOTCFG_PORT_F    0x0000A000  // Port F
404 #define FLASH_BOOTCFG_PORT_G    0x0000C000  // Port G
405 #define FLASH_BOOTCFG_PORT_H    0x0000E000  // Port H
406 #define FLASH_BOOTCFG_PIN_M     0x00001C00  // Boot GPIO Pin
407 #define FLASH_BOOTCFG_PIN_0     0x00000000  // Pin 0
408 #define FLASH_BOOTCFG_PIN_1     0x00000400  // Pin 1
409 #define FLASH_BOOTCFG_PIN_2     0x00000800  // Pin 2
410 #define FLASH_BOOTCFG_PIN_3     0x00000C00  // Pin 3
411 #define FLASH_BOOTCFG_PIN_4     0x00001000  // Pin 4
412 #define FLASH_BOOTCFG_PIN_5     0x00001400  // Pin 5
413 #define FLASH_BOOTCFG_PIN_6     0x00001800  // Pin 6
414 #define FLASH_BOOTCFG_PIN_7     0x00001C00  // Pin 7
415 #define FLASH_BOOTCFG_POL       0x00000200  // Boot GPIO Polarity
416 #define FLASH_BOOTCFG_EN        0x00000100  // Boot GPIO Enable
417 #define FLASH_BOOTCFG_KEY       0x00000010  // KEY Select
418 #define FLASH_BOOTCFG_DBG1      0x00000002  // Debug Control 1
419 #define FLASH_BOOTCFG_DBG0      0x00000001  // Debug Control 0
420 
421 //*****************************************************************************
422 //
423 // The following are defines for the bit fields in the FLASH_USERREG0 register.
424 //
425 //*****************************************************************************
426 #define FLASH_USERREG0_DATA_M   0xFFFFFFFF  // User Data
427 #define FLASH_USERREG0_DATA_S   0
428 
429 //*****************************************************************************
430 //
431 // The following are defines for the bit fields in the FLASH_USERREG1 register.
432 //
433 //*****************************************************************************
434 #define FLASH_USERREG1_DATA_M   0xFFFFFFFF  // User Data
435 #define FLASH_USERREG1_DATA_S   0
436 
437 //*****************************************************************************
438 //
439 // The following are defines for the bit fields in the FLASH_USERREG2 register.
440 //
441 //*****************************************************************************
442 #define FLASH_USERREG2_DATA_M   0xFFFFFFFF  // User Data
443 #define FLASH_USERREG2_DATA_S   0
444 
445 //*****************************************************************************
446 //
447 // The following are defines for the bit fields in the FLASH_USERREG3 register.
448 //
449 //*****************************************************************************
450 #define FLASH_USERREG3_DATA_M   0xFFFFFFFF  // User Data
451 #define FLASH_USERREG3_DATA_S   0
452 
453 //*****************************************************************************
454 //
455 // The following are defines for the bit fields in the FLASH_FMPRE8 register.
456 //
457 //*****************************************************************************
458 #define FLASH_FMPRE8_READ_ENABLE_M                                            \
459                                 0xFFFFFFFF  // Flash Read Enable
460 #define FLASH_FMPRE8_READ_ENABLE_S                                            \
461                                 0
462 
463 //*****************************************************************************
464 //
465 // The following are defines for the bit fields in the FLASH_FMPRE9 register.
466 //
467 //*****************************************************************************
468 #define FLASH_FMPRE9_READ_ENABLE_M                                            \
469                                 0xFFFFFFFF  // Flash Read Enable
470 #define FLASH_FMPRE9_READ_ENABLE_S                                            \
471                                 0
472 
473 //*****************************************************************************
474 //
475 // The following are defines for the bit fields in the FLASH_FMPRE10 register.
476 //
477 //*****************************************************************************
478 #define FLASH_FMPRE10_READ_ENABLE_M                                           \
479                                 0xFFFFFFFF  // Flash Read Enable
480 #define FLASH_FMPRE10_READ_ENABLE_S                                           \
481                                 0
482 
483 //*****************************************************************************
484 //
485 // The following are defines for the bit fields in the FLASH_FMPRE11 register.
486 //
487 //*****************************************************************************
488 #define FLASH_FMPRE11_READ_ENABLE_M                                           \
489                                 0xFFFFFFFF  // Flash Read Enable
490 #define FLASH_FMPRE11_READ_ENABLE_S                                           \
491                                 0
492 
493 //*****************************************************************************
494 //
495 // The following are defines for the bit fields in the FLASH_FMPRE12 register.
496 //
497 //*****************************************************************************
498 #define FLASH_FMPRE12_READ_ENABLE_M                                           \
499                                 0xFFFFFFFF  // Flash Read Enable
500 #define FLASH_FMPRE12_READ_ENABLE_S                                           \
501                                 0
502 
503 //*****************************************************************************
504 //
505 // The following are defines for the bit fields in the FLASH_FMPRE13 register.
506 //
507 //*****************************************************************************
508 #define FLASH_FMPRE13_READ_ENABLE_M                                           \
509                                 0xFFFFFFFF  // Flash Read Enable
510 #define FLASH_FMPRE13_READ_ENABLE_S                                           \
511                                 0
512 
513 //*****************************************************************************
514 //
515 // The following are defines for the bit fields in the FLASH_FMPRE14 register.
516 //
517 //*****************************************************************************
518 #define FLASH_FMPRE14_READ_ENABLE_M                                           \
519                                 0xFFFFFFFF  // Flash Read Enable
520 #define FLASH_FMPRE14_READ_ENABLE_S                                           \
521                                 0
522 
523 //*****************************************************************************
524 //
525 // The following are defines for the bit fields in the FLASH_FMPRE15 register.
526 //
527 //*****************************************************************************
528 #define FLASH_FMPRE15_READ_ENABLE_M                                           \
529                                 0xFFFFFFFF  // Flash Read Enable
530 #define FLASH_FMPRE15_READ_ENABLE_S                                           \
531                                 0
532 
533 //*****************************************************************************
534 //
535 // The following are defines for the bit fields in the FLASH_FMPPE8 register.
536 //
537 //*****************************************************************************
538 #define FLASH_FMPPE8_PROG_ENABLE_M                                            \
539                                 0xFFFFFFFF  // Flash Programming Enable
540 #define FLASH_FMPPE8_PROG_ENABLE_S                                            \
541                                 0
542 
543 //*****************************************************************************
544 //
545 // The following are defines for the bit fields in the FLASH_FMPPE9 register.
546 //
547 //*****************************************************************************
548 #define FLASH_FMPPE9_PROG_ENABLE_M                                            \
549                                 0xFFFFFFFF  // Flash Programming Enable
550 #define FLASH_FMPPE9_PROG_ENABLE_S                                            \
551                                 0
552 
553 //*****************************************************************************
554 //
555 // The following are defines for the bit fields in the FLASH_FMPPE10 register.
556 //
557 //*****************************************************************************
558 #define FLASH_FMPPE10_PROG_ENABLE_M                                           \
559                                 0xFFFFFFFF  // Flash Programming Enable
560 #define FLASH_FMPPE10_PROG_ENABLE_S                                           \
561                                 0
562 
563 //*****************************************************************************
564 //
565 // The following are defines for the bit fields in the FLASH_FMPPE11 register.
566 //
567 //*****************************************************************************
568 #define FLASH_FMPPE11_PROG_ENABLE_M                                           \
569                                 0xFFFFFFFF  // Flash Programming Enable
570 #define FLASH_FMPPE11_PROG_ENABLE_S                                           \
571                                 0
572 
573 //*****************************************************************************
574 //
575 // The following are defines for the bit fields in the FLASH_FMPPE12 register.
576 //
577 //*****************************************************************************
578 #define FLASH_FMPPE12_PROG_ENABLE_M                                           \
579                                 0xFFFFFFFF  // Flash Programming Enable
580 #define FLASH_FMPPE12_PROG_ENABLE_S                                           \
581                                 0
582 
583 //*****************************************************************************
584 //
585 // The following are defines for the bit fields in the FLASH_FMPPE13 register.
586 //
587 //*****************************************************************************
588 #define FLASH_FMPPE13_PROG_ENABLE_M                                           \
589                                 0xFFFFFFFF  // Flash Programming Enable
590 #define FLASH_FMPPE13_PROG_ENABLE_S                                           \
591                                 0
592 
593 //*****************************************************************************
594 //
595 // The following are defines for the bit fields in the FLASH_FMPPE14 register.
596 //
597 //*****************************************************************************
598 #define FLASH_FMPPE14_PROG_ENABLE_M                                           \
599                                 0xFFFFFFFF  // Flash Programming Enable
600 #define FLASH_FMPPE14_PROG_ENABLE_S                                           \
601                                 0
602 
603 //*****************************************************************************
604 //
605 // The following are defines for the bit fields in the FLASH_FMPPE15 register.
606 //
607 //*****************************************************************************
608 #define FLASH_FMPPE15_PROG_ENABLE_M                                           \
609                                 0xFFFFFFFF  // Flash Programming Enable
610 #define FLASH_FMPPE15_PROG_ENABLE_S                                           \
611                                 0
612 
613 //*****************************************************************************
614 //
615 // The following are defines for the erase size of the FLASH block that is
616 // erased by an erase operation, and the protect size is the size of the FLASH
617 // block that is protected by each protection register.
618 //
619 //*****************************************************************************
620 #define FLASH_PROTECT_SIZE      0x00000800
621 #define FLASH_ERASE_SIZE        0x00000400
622 
623 #endif // __HW_FLASH_H__
624