1 /** @file reg_flash.h 2 * @brief Flash Register Layer Header File 3 * @date 29.May.2013 4 * @version 03.05.02 5 * 6 * This file contains: 7 * - Definitions 8 * - Types 9 * . 10 * which are relevant for the System driver. 11 */ 12 13 /* (c) Texas Instruments 2009-2013, All rights reserved. */ 14 15 #ifndef __REG_FLASH_H__ 16 #define __REG_FLASH_H__ 17 18 #include "sys_common.h" 19 20 /* Flash Register Frame Definition */ 21 /** @struct flashWBase 22 * @brief Flash Wrapper Register Frame Definition 23 * 24 * This type is used to access the Flash Wrapper Registers. 25 */ 26 /** @typedef flashWBASE_t 27 * @brief Flash Wrapper Register Frame Type Definition 28 * 29 * This type is used to access the Flash Wrapper Registers. 30 */ 31 typedef volatile struct flashWBase 32 { 33 uint32 FRDCNTL; /* 0x0000 */ 34 uint32 FSPRD; /* 0x0004 */ 35 uint32 FEDACCTRL1; /* 0x0008 */ 36 uint32 FEDACCTRL2; /* 0x000C */ 37 uint32 FCORERRCNT; /* 0x0010 */ 38 uint32 FCORERRADD; /* 0x0014 */ 39 uint32 FCORERRPOS; /* 0x0018 */ 40 uint32 FEDACSTATUS; /* 0x001C */ 41 uint32 FUNCERRADD; /* 0x0020 */ 42 uint32 FEDACSDIS; /* 0x0024 */ 43 uint32 FPRIMADDTAG; /* 0x0028 */ 44 uint32 FREDUADDTAG; /* 0x002C */ 45 uint32 FBPROT; /* 0x0030 */ 46 uint32 FBSE; /* 0x0034 */ 47 uint32 FBBUSY; /* 0x0038 */ 48 uint32 FBAC; /* 0x003C */ 49 uint32 FBFALLBACK; /* 0x0040 */ 50 uint32 FBPRDY; /* 0x0044 */ 51 uint32 FPAC1; /* 0x0048 */ 52 uint32 FPAC2; /* 0x004C */ 53 uint32 FMAC; /* 0x0050 */ 54 uint32 FMSTAT; /* 0x0054 */ 55 uint32 FEMUDMSW; /* 0x0058 */ 56 uint32 FEMUDLSW; /* 0x005C */ 57 uint32 FEMUECC; /* 0x0060 */ 58 uint32 FLOCK; /* 0x0064 */ 59 uint32 FEMUADDR; /* 0x0068 */ 60 uint32 FDIAGCTRL; /* 0x006C */ 61 uint32 FRAWDATAH; /* 0x0070 */ 62 uint32 FRAWDATAL; /* 0x0074 */ 63 uint32 FRAWECC; /* 0x0078 */ 64 uint32 FPAROVR; /* 0x007C */ 65 uint32 FVREADCT; /* 0x0080 */ 66 uint32 FVHVCT1; /* 0x0084 */ 67 uint32 FVHVCT2; /* 0x0088 */ 68 uint32 FVNVCT; /* 0x008C */ 69 uint32 FVPPCT; /* 0x0090 */ 70 uint32 FVWLCT; /* 0x0094 */ 71 uint32 FEFUSE; /* 0x0098 */ 72 uint32 rsvd1[9U]; /* 0x009C */ 73 uint32 FEDACSDIS2; /* 0x00C0 */ 74 uint32 rsvd2[15U]; /* 0x00C4 */ 75 uint32 FBSTROBES; /* 0x0100 */ 76 uint32 FPSTROBES; /* 0x0104 */ 77 uint32 FBMODE; /* 0x0108 */ 78 uint32 FTCR; /* 0x010C */ 79 uint32 FADDR; /* 0x0110 */ 80 uint32 FWRITE; /* 0x0114 */ 81 uint32 FCBITSEL; /* 0x0118 */ 82 uint32 FTCTRL; /* 0x011C */ 83 uint32 FWPWRITE0; /* 0x0120 */ 84 uint32 FWPWRITE1; /* 0x0124 */ 85 uint32 FWPWRITE2; /* 0x0128 */ 86 uint32 FWPWRITE3; /* 0x012C */ 87 uint32 FWPWRITE4; /* 0x0130 */ 88 uint32 rsvd3[85U]; /* 0x0134 */ 89 uint32 FSMWRENA; /* 0x0288 */ 90 uint32 rsvd4[6U]; /* 0x028C */ 91 uint32 FSMSECTOR; /* 0x02A4 */ 92 uint32 rsvd5[4U]; /* 0x02A8 */ 93 uint32 EEPROMCONFIG;/* 0x02B8 */ 94 uint32 rsvd6[19U]; /* 0x02BC */ 95 uint32 EECTRL1; /* 0x0308 */ 96 uint32 EECTRL2; /* 0x030C */ 97 uint32 EECORRERRCNT;/* 0x0310 */ 98 uint32 EECORRERRADD;/* 0x0314 */ 99 uint32 EECORRERRPOS;/* 0x0318 */ 100 uint32 EESTATUS; /* 0x031C */ 101 uint32 EEUNCERRADD; /* 0x0320 */ 102 } flashWBASE_t; 103 104 /** @def flashWREG 105 * @brief Flash Wrapper Register Frame Pointer 106 * 107 * This pointer is used by the system driver to access the flash wrapper registers. 108 */ 109 #define flashWREG ((flashWBASE_t *)(0xFFF87000U)) 110 111 #endif 112