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