Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:23:38

0001 /* SPDX-License-Identifier: BSD-2-Clause */
0002 
0003 /**
0004  * @file
0005  *
0006  * @ingroup RTEMSBSPsARMTMS570
0007  *
0008  * @brief This header file provides flash interfaces.
0009  */
0010 
0011 /* The header file is generated by make_header.py from FLASH.json */
0012 /* Current script's version can be found at: */
0013 /* https://github.com/AoLaD/rtems-tms570-utils/tree/headers/headers/python */
0014 
0015 /*
0016  * Copyright (c) 2014-2015, Premysl Houdek <kom541000@gmail.com>
0017  *
0018  * Czech Technical University in Prague
0019  * Zikova 1903/4
0020  * 166 36 Praha 6
0021  * Czech Republic
0022  *
0023  * All rights reserved.
0024  *
0025  * Redistribution and use in source and binary forms, with or without
0026  * modification, are permitted provided that the following conditions are met:
0027  *
0028  * 1. Redistributions of source code must retain the above copyright notice, this
0029  *    list of conditions and the following disclaimer.
0030  * 2. Redistributions in binary form must reproduce the above copyright notice,
0031  *    this list of conditions and the following disclaimer in the documentation
0032  *    and/or other materials provided with the distribution.
0033  *
0034  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
0035  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
0036  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
0037  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
0038  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
0039  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
0040  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
0041  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
0042  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
0043  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0044  *
0045  * The views and conclusions contained in the software and documentation are those
0046  * of the authors and should not be interpreted as representing official policies,
0047  * either expressed or implied, of the FreeBSD Project.
0048 */
0049 #ifndef LIBBSP_ARM_TMS570_FLASH
0050 #define LIBBSP_ARM_TMS570_FLASH
0051 
0052 #include <bsp/utility.h>
0053 
0054 typedef struct{
0055   uint32_t FRDCNTL;           /*Flash Option Control Register*/
0056   uint8_t reserved1 [4];
0057   uint32_t FEDACTRL1;         /*Flash Error Detection and Correction Control Register 1*/
0058   uint32_t FEDACTRL2;         /*Flash Error Detection and Correction Control Register 2*/
0059   uint32_t FCORERRCNT;        /*Flash Correctable Error Count Register*/
0060   uint32_t FCORERRADD;        /*Flash Correctable Error Address Register*/
0061   uint32_t FCORERRPOS;        /*Flash Correctable Error Position Register*/
0062   uint32_t FEDACSTATUS;       /*Flash Error Detection and Correction Status Register*/
0063   uint32_t FUNCERRADD;        /*Flash Un-Correctable Error Address Register*/
0064   uint32_t FEDACSDIS;         /*Flash Error Detection and Correction Sector Disable Register*/
0065   uint32_t FPRIMADDTAG;       /*Flash Primary Address Tag Register*/
0066   uint32_t FDUPADDTAG;        /*Flash Duplicate Address Tag Register*/
0067   uint32_t FBPROT;            /*Flash Bank Protection Register*/
0068   uint32_t FBSE;              /*Flash Bank Sector Enable Register*/
0069   uint32_t FBBUSY;            /*Flash Bank Busy Register*/
0070   uint32_t FBAC;              /*Flash Bank Access Control Register*/
0071   uint32_t FBFALLBACK;        /*Flash Bank Fallback Power Register*/
0072   uint32_t FBPRDY;            /*Flash Bank/Pump Ready Register*/
0073   uint32_t FPAC1;             /*Flash Pump Access Control Register 1*/
0074   uint32_t FPAC2;             /*Flash Pump Access Control Register 2*/
0075   uint32_t FMAC;              /*Flash Module Access Control Register*/
0076   uint32_t FMSTAT;            /*Flash Module Status Register*/
0077   uint32_t FEMUDMSW;          /*EEPROM Emulation Data MSW Register*/
0078   uint32_t FEMUDLSW;          /*EEPROM Emulation Data LSW Register*/
0079   uint32_t FEMUECC;           /*EEPROM Emulation ECC Register*/
0080   uint8_t reserved2 [4];
0081   uint32_t FEMUADDR;          /*EEPROM Emulation Address Register*/
0082   uint32_t FDIAGCTRL;         /*Diagnostic Control Register*/
0083   uint32_t FRAWDATAH;         /*Uncorrected Raw Data High Register*/
0084   uint32_t FRAWDATAL;         /*Uncorrected Raw Data Low Register*/
0085   uint32_t FRAWECC;           /*Uncorrected Raw ECC Register*/
0086   uint32_t FPAROVR;           /*Parity Override Register*/
0087   uint8_t reserved3 [64];
0088   uint32_t FEDACSDIS2;        /*Flash Error Detection and Correction Sector Disable Register 2*/
0089   uint8_t reserved4 [452];
0090   uint32_t FSMWRENA;          /*FSM Register Write Enable*/
0091   uint8_t reserved5 [24];
0092   uint32_t FSMSECTOR;         /*FSM Sector Register*/
0093   uint8_t reserved6 [16];
0094   uint32_t EEPROMCONFIG;      /*EEPROM Emulation Configuration Register*/
0095   uint8_t reserved7 [76];
0096   uint32_t EECTRL1;           /*EEPROM Emulation Error Detection and Correction Control Register 1*/
0097   uint32_t EECTRL2;           /*EEPROM Emulation Error Detection and Correction Control Register 2*/
0098   uint32_t EECORERRCNT;       /*EEPROM Emulation Correctable Error Count Register*/
0099   uint32_t EECORERRADD;       /*EEPROM Emulation Correctable Error Address Register*/
0100   uint32_t EECORERRPOS;       /*EEPROM Emulation Correctable Error Bit Position Register*/
0101   uint32_t EESTATUS;          /*EEPROM Emulation Error Status Register*/
0102   uint32_t EEUNCERRADD;       /*EEPROM Emulation Un-Correctable Error Address Register*/
0103   uint8_t reserved8 [220];
0104   uint32_t FCFGBANK;          /*Flash Bank Configuration Register*/
0105 } tms570_flash_t;
0106 
0107 
0108 /*--------------------TMS570_FLASH_FRDCNTL--------------------*/
0109 /* field: RWAIT - Random/data Read Wait State */
0110 #define TMS570_FLASH_FRDCNTL_RWAIT(val) BSP_FLD32(val,8, 11)
0111 #define TMS570_FLASH_FRDCNTL_RWAIT_GET(reg) BSP_FLD32GET(reg,8, 11)
0112 #define TMS570_FLASH_FRDCNTL_RWAIT_SET(reg,val) BSP_FLD32SET(reg, val,8, 11)
0113 
0114 /* field: ASWSTEN - Address Setup Wait State Enable */
0115 #define TMS570_FLASH_FRDCNTL_ASWSTEN BSP_BIT32(4)
0116 
0117 /* field: ENPIPE - Enable Pipeline Mode */
0118 #define TMS570_FLASH_FRDCNTL_ENPIPE BSP_BIT32(0)
0119 
0120 
0121 /*-------------------TMS570_FLASH_FEDACTRL1-------------------*/
0122 /* field: SUSP_IGNR - Suspend Ignore. */
0123 #define TMS570_FLASH_FEDACTRL1_SUSP_IGNR BSP_BIT32(24)
0124 
0125 /* field: EDACMODE - Error Correction Mode. */
0126 #define TMS570_FLASH_FEDACTRL1_EDACMODE(val) BSP_FLD32(val,16, 19)
0127 #define TMS570_FLASH_FEDACTRL1_EDACMODE_GET(reg) BSP_FLD32GET(reg,16, 19)
0128 #define TMS570_FLASH_FEDACTRL1_EDACMODE_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
0129 
0130 /* field: EOFEN - Event on Ones Fail Enable */
0131 #define TMS570_FLASH_FEDACTRL1_EOFEN BSP_BIT32(10)
0132 
0133 /* field: EZFEN - Event on Zeros Fail Enable */
0134 #define TMS570_FLASH_FEDACTRL1_EZFEN BSP_BIT32(9)
0135 
0136 /* field: EPEN - Error Profiling Enable. */
0137 #define TMS570_FLASH_FEDACTRL1_EPEN BSP_BIT32(8)
0138 
0139 /* field: EDACEN - Error Detection and Correction Enable */
0140 #define TMS570_FLASH_FEDACTRL1_EDACEN(val) BSP_FLD32(val,0, 3)
0141 #define TMS570_FLASH_FEDACTRL1_EDACEN_GET(reg) BSP_FLD32GET(reg,0, 3)
0142 #define TMS570_FLASH_FEDACTRL1_EDACEN_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
0143 
0144 
0145 /*-------------------TMS570_FLASH_FEDACTRL2-------------------*/
0146 /* field: SEC_THRESHOLD - Single Error Correction Threshold */
0147 #define TMS570_FLASH_FEDACTRL2_SEC_THRESHOLD(val) BSP_FLD32(val,0, 15)
0148 #define TMS570_FLASH_FEDACTRL2_SEC_THRESHOLD_GET(reg) BSP_FLD32GET(reg,0, 15)
0149 #define TMS570_FLASH_FEDACTRL2_SEC_THRESHOLD_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
0150 
0151 
0152 /*------------------TMS570_FLASH_FCORERRCNT------------------*/
0153 /* field: FERRCNT - Single Error Correction Count */
0154 #define TMS570_FLASH_FCORERRCNT_FERRCNT(val) BSP_FLD32(val,0, 15)
0155 #define TMS570_FLASH_FCORERRCNT_FERRCNT_GET(reg) BSP_FLD32GET(reg,0, 15)
0156 #define TMS570_FLASH_FCORERRCNT_FERRCNT_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
0157 
0158 
0159 /*------------------TMS570_FLASH_FCORERRADD------------------*/
0160 /* field: COR_ERR_ADD - Correctable Error Address */
0161 #define TMS570_FLASH_FCORERRADD_COR_ERR_ADD(val) BSP_FLD32(val,3, 31)
0162 #define TMS570_FLASH_FCORERRADD_COR_ERR_ADD_GET(reg) BSP_FLD32GET(reg,3, 31)
0163 #define TMS570_FLASH_FCORERRADD_COR_ERR_ADD_SET(reg,val) BSP_FLD32SET(reg, val,3, 31)
0164 
0165 /* field: B_OFF - Byte Offset */
0166 #define TMS570_FLASH_FCORERRADD_B_OFF(val) BSP_FLD32(val,0, 2)
0167 #define TMS570_FLASH_FCORERRADD_B_OFF_GET(reg) BSP_FLD32GET(reg,0, 2)
0168 #define TMS570_FLASH_FCORERRADD_B_OFF_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
0169 
0170 
0171 /*------------------TMS570_FLASH_FCORERRPOS------------------*/
0172 /* field: BUS2 - Bus 2 Error */
0173 #define TMS570_FLASH_FCORERRPOS_BUS2 BSP_BIT32(9)
0174 
0175 /* field: TYPE - ErrorType */
0176 #define TMS570_FLASH_FCORERRPOS_TYPE BSP_BIT32(8)
0177 
0178 /* field: ERR_POS - The bit address of the single bit error */
0179 #define TMS570_FLASH_FCORERRPOS_ERR_POS(val) BSP_FLD32(val,0, 7)
0180 #define TMS570_FLASH_FCORERRPOS_ERR_POS_GET(reg) BSP_FLD32GET(reg,0, 7)
0181 #define TMS570_FLASH_FCORERRPOS_ERR_POS_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0182 
0183 
0184 /*------------------TMS570_FLASH_FEDACSTATUS------------------*/
0185 /* field: Reserved - Read returns 0. Writes have no effect. */
0186 #define TMS570_FLASH_FEDACSTATUS_Reserved(val) BSP_FLD32(val,26, 31)
0187 #define TMS570_FLASH_FEDACSTATUS_Reserved_GET(reg) BSP_FLD32GET(reg,26, 31)
0188 #define TMS570_FLASH_FEDACSTATUS_Reserved_SET(reg,val) BSP_FLD32SET(reg, val,26, 31)
0189 
0190 /* field: FSM_DONE - Flash State Machine Done */
0191 #define TMS570_FLASH_FEDACSTATUS_FSM_DONE BSP_BIT32(24)
0192 
0193 /* field: COMB2_MAL_G - Bus 2 Compare Malfunction Flag. */
0194 #define TMS570_FLASH_FEDACSTATUS_COMB2_MAL_G BSP_BIT32(19)
0195 
0196 /* field: ECC_B2_MAL_ - Bus 2 ECC Malfunction Error Flag */
0197 #define TMS570_FLASH_FEDACSTATUS_ECC_B2_MAL_ BSP_BIT32(18)
0198 
0199 /* field: B2_UNC_ERR - Bus 2 uncorrectable error */
0200 #define TMS570_FLASH_FEDACSTATUS_B2_UNC_ERR BSP_BIT32(17)
0201 
0202 /* field: B2_COR_ERR - Bus 2 Correctable Error */
0203 #define TMS570_FLASH_FEDACSTATUS_B2_COR_ERR BSP_BIT32(16)
0204 
0205 /* field: D_UNC_ERR - Diagnostic Uncorrectable Error */
0206 #define TMS570_FLASH_FEDACSTATUS_D_UNC_ERR BSP_BIT32(12)
0207 
0208 /* field: ADD_TAG_ERR - Address Tag Register Error Flag */
0209 #define TMS570_FLASH_FEDACSTATUS_ADD_TAG_ERR BSP_BIT32(11)
0210 
0211 /* field: ADD_PAR_ERR - Address Parity Error Flag */
0212 #define TMS570_FLASH_FEDACSTATUS_ADD_PAR_ERR BSP_BIT32(10)
0213 
0214 /* field: B1_UNC_ERR - Bus 1 Uncorrectable Error Flag */
0215 #define TMS570_FLASH_FEDACSTATUS_B1_UNC_ERR BSP_BIT32(8)
0216 
0217 /* field: D_CORR_ERR - Diagnostic Correctable Error Status Flag */
0218 #define TMS570_FLASH_FEDACSTATUS_D_CORR_ERR BSP_BIT32(3)
0219 
0220 /* field: ERR_ONE_FLG - Error on One Fail Status Flag */
0221 #define TMS570_FLASH_FEDACSTATUS_ERR_ONE_FLG BSP_BIT32(2)
0222 
0223 /* field: ERR_ZERO__FLG - Error on Zero Fail Status Flag */
0224 #define TMS570_FLASH_FEDACSTATUS_ERR_ZERO__FLG BSP_BIT32(1)
0225 
0226 /* field: ERR_PRF_FLG - Error Profiling Status Flag */
0227 #define TMS570_FLASH_FEDACSTATUS_ERR_PRF_FLG BSP_BIT32(0)
0228 
0229 
0230 /*------------------TMS570_FLASH_FUNCERRADD------------------*/
0231 /* field: UNC_ERR_ADD - Un-correctable Error Address */
0232 #define TMS570_FLASH_FUNCERRADD_UNC_ERR_ADD(val) BSP_FLD32(val,3, 31)
0233 #define TMS570_FLASH_FUNCERRADD_UNC_ERR_ADD_GET(reg) BSP_FLD32GET(reg,3, 31)
0234 #define TMS570_FLASH_FUNCERRADD_UNC_ERR_ADD_SET(reg,val) BSP_FLD32SET(reg, val,3, 31)
0235 
0236 /* field: B_OFF - Byte offset */
0237 #define TMS570_FLASH_FUNCERRADD_B_OFF(val) BSP_FLD32(val,0, 2)
0238 #define TMS570_FLASH_FUNCERRADD_B_OFF_GET(reg) BSP_FLD32GET(reg,0, 2)
0239 #define TMS570_FLASH_FUNCERRADD_B_OFF_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
0240 
0241 
0242 /*-------------------TMS570_FLASH_FEDACSDIS-------------------*/
0243 /* field: BankID1_Inverse - The bank ID inverse bits are used with the bank ID bits to select the bank for which a sector */
0244 #define TMS570_FLASH_FEDACSDIS_BankID1_Inverse(val) BSP_FLD32(val,29, 31)
0245 #define TMS570_FLASH_FEDACSDIS_BankID1_Inverse_GET(reg) BSP_FLD32GET(reg,29, 31)
0246 #define TMS570_FLASH_FEDACSDIS_BankID1_Inverse_SET(reg,val) BSP_FLD32SET(reg, val,29, 31)
0247 
0248 /* field: SectorID1_inverse - The sector ID inverse bits are used with the sector ID bits to determine which sector is */
0249 #define TMS570_FLASH_FEDACSDIS_SectorID1_inverse(val) BSP_FLD32(val,24, 27)
0250 #define TMS570_FLASH_FEDACSDIS_SectorID1_inverse_GET(reg) BSP_FLD32GET(reg,24, 27)
0251 #define TMS570_FLASH_FEDACSDIS_SectorID1_inverse_SET(reg,val) BSP_FLD32SET(reg, val,24, 27)
0252 
0253 /* field: BankID1 - The bank ID bits are used with the bank ID inverse bits to select the bank for which a sector */
0254 #define TMS570_FLASH_FEDACSDIS_BankID1(val) BSP_FLD32(val,21, 23)
0255 #define TMS570_FLASH_FEDACSDIS_BankID1_GET(reg) BSP_FLD32GET(reg,21, 23)
0256 #define TMS570_FLASH_FEDACSDIS_BankID1_SET(reg,val) BSP_FLD32SET(reg, val,21, 23)
0257 
0258 /* field: SectorID1 - The sector ID bits are used with the sector ID inverse bits to determine which sector is */
0259 #define TMS570_FLASH_FEDACSDIS_SectorID1(val) BSP_FLD32(val,16, 19)
0260 #define TMS570_FLASH_FEDACSDIS_SectorID1_GET(reg) BSP_FLD32GET(reg,16, 19)
0261 #define TMS570_FLASH_FEDACSDIS_SectorID1_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
0262 
0263 /* field: BankID0_Inverse - The bank ID inverse bits are used with the bank ID bits to select the bank for which a sector */
0264 #define TMS570_FLASH_FEDACSDIS_BankID0_Inverse(val) BSP_FLD32(val,13, 15)
0265 #define TMS570_FLASH_FEDACSDIS_BankID0_Inverse_GET(reg) BSP_FLD32GET(reg,13, 15)
0266 #define TMS570_FLASH_FEDACSDIS_BankID0_Inverse_SET(reg,val) BSP_FLD32SET(reg, val,13, 15)
0267 
0268 /* field: SectorID0_inverse - The sector ID inverse bits are used with the sector ID bits to determine which sector is */
0269 #define TMS570_FLASH_FEDACSDIS_SectorID0_inverse(val) BSP_FLD32(val,8, 11)
0270 #define TMS570_FLASH_FEDACSDIS_SectorID0_inverse_GET(reg) BSP_FLD32GET(reg,8, 11)
0271 #define TMS570_FLASH_FEDACSDIS_SectorID0_inverse_SET(reg,val) BSP_FLD32SET(reg, val,8, 11)
0272 
0273 /* field: BankID0 - The bank ID bits are used with the bank ID inverse bits to select the bank for which a sector */
0274 #define TMS570_FLASH_FEDACSDIS_BankID0(val) BSP_FLD32(val,5, 7)
0275 #define TMS570_FLASH_FEDACSDIS_BankID0_GET(reg) BSP_FLD32GET(reg,5, 7)
0276 #define TMS570_FLASH_FEDACSDIS_BankID0_SET(reg,val) BSP_FLD32SET(reg, val,5, 7)
0277 
0278 /* field: SectorID0 - The sector ID bits are used with the sector ID inverse bits to determine which sector is */
0279 #define TMS570_FLASH_FEDACSDIS_SectorID0(val) BSP_FLD32(val,0, 3)
0280 #define TMS570_FLASH_FEDACSDIS_SectorID0_GET(reg) BSP_FLD32GET(reg,0, 3)
0281 #define TMS570_FLASH_FEDACSDIS_SectorID0_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
0282 
0283 
0284 /*------------------TMS570_FLASH_FPRIMADDTAG------------------*/
0285 /* field: PRIM_ADD_TAG - Primary Address Tag Register */
0286 #define TMS570_FLASH_FPRIMADDTAG_PRIM_ADD_TAG(val) BSP_FLD32(val,4, 31)
0287 #define TMS570_FLASH_FPRIMADDTAG_PRIM_ADD_TAG_GET(reg) BSP_FLD32GET(reg,4, 31)
0288 #define TMS570_FLASH_FPRIMADDTAG_PRIM_ADD_TAG_SET(reg,val) BSP_FLD32SET(reg, val,4, 31)
0289 
0290 /* field: 0 - Always 0000 */
0291 #define TMS570_FLASH_FPRIMADDTAG_0(val) BSP_FLD32(val,0, 3)
0292 #define TMS570_FLASH_FPRIMADDTAG_0_GET(reg) BSP_FLD32GET(reg,0, 3)
0293 #define TMS570_FLASH_FPRIMADDTAG_0_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
0294 
0295 
0296 /*------------------TMS570_FLASH_FDUPADDTAG------------------*/
0297 /* field: DUP_ADD_TAG - Primary Address Tag Register */
0298 #define TMS570_FLASH_FDUPADDTAG_DUP_ADD_TAG(val) BSP_FLD32(val,4, 31)
0299 #define TMS570_FLASH_FDUPADDTAG_DUP_ADD_TAG_GET(reg) BSP_FLD32GET(reg,4, 31)
0300 #define TMS570_FLASH_FDUPADDTAG_DUP_ADD_TAG_SET(reg,val) BSP_FLD32SET(reg, val,4, 31)
0301 
0302 
0303 /*--------------------TMS570_FLASH_FBPROT--------------------*/
0304 /* field: PROTL1DIS - PROTL1DIS: Level 1 Protection Disabled */
0305 #define TMS570_FLASH_FBPROT_PROTL1DIS BSP_BIT32(0)
0306 
0307 
0308 /*---------------------TMS570_FLASH_FBSE---------------------*/
0309 /* field: BSE - Bank Sector Enable */
0310 #define TMS570_FLASH_FBSE_BSE(val) BSP_FLD32(val,0, 15)
0311 #define TMS570_FLASH_FBSE_BSE_GET(reg) BSP_FLD32GET(reg,0, 15)
0312 #define TMS570_FLASH_FBSE_BSE_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
0313 
0314 
0315 /*--------------------TMS570_FLASH_FBBUSY--------------------*/
0316 /* field: BUSY - Bank Busy */
0317 #define TMS570_FLASH_FBBUSY_BUSY(val) BSP_FLD32(val,0, 7)
0318 #define TMS570_FLASH_FBBUSY_BUSY_GET(reg) BSP_FLD32GET(reg,0, 7)
0319 #define TMS570_FLASH_FBBUSY_BUSY_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0320 
0321 
0322 /*---------------------TMS570_FLASH_FBAC---------------------*/
0323 /* field: OTPPROTDIS - OTP Sector Protection Disable. */
0324 #define TMS570_FLASH_FBAC_OTPPROTDIS(val) BSP_FLD32(val,16, 23)
0325 #define TMS570_FLASH_FBAC_OTPPROTDIS_GET(reg) BSP_FLD32GET(reg,16, 23)
0326 #define TMS570_FLASH_FBAC_OTPPROTDIS_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
0327 
0328 /* field: 15_8 - BAGP 0-FFh Bank Active Grace Period. */
0329 #define TMS570_FLASH_FBAC_15_8(val) BSP_FLD32(val,8, 15)
0330 #define TMS570_FLASH_FBAC_15_8_GET(reg) BSP_FLD32GET(reg,8, 15)
0331 #define TMS570_FLASH_FBAC_15_8_SET(reg,val) BSP_FLD32SET(reg, val,8, 15)
0332 
0333 /* field: VREADST - VREAD Setup. */
0334 #define TMS570_FLASH_FBAC_VREADST(val) BSP_FLD32(val,0, 7)
0335 #define TMS570_FLASH_FBAC_VREADST_GET(reg) BSP_FLD32GET(reg,0, 7)
0336 #define TMS570_FLASH_FBAC_VREADST_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0337 
0338 
0339 /*------------------TMS570_FLASH_FBFALLBACK------------------*/
0340 /* field: BANKPWR7 - Bank 7 Fallback Power Mode */
0341 #define TMS570_FLASH_FBFALLBACK_BANKPWR7(val) BSP_FLD32(val,14, 15)
0342 #define TMS570_FLASH_FBFALLBACK_BANKPWR7_GET(reg) BSP_FLD32GET(reg,14, 15)
0343 #define TMS570_FLASH_FBFALLBACK_BANKPWR7_SET(reg,val) BSP_FLD32SET(reg, val,14, 15)
0344 
0345 /* field: BANKPWR1 - Bank 1 Fallback Power Mode */
0346 #define TMS570_FLASH_FBFALLBACK_BANKPWR1(val) BSP_FLD32(val,2, 3)
0347 #define TMS570_FLASH_FBFALLBACK_BANKPWR1_GET(reg) BSP_FLD32GET(reg,2, 3)
0348 #define TMS570_FLASH_FBFALLBACK_BANKPWR1_SET(reg,val) BSP_FLD32SET(reg, val,2, 3)
0349 
0350 /* field: BANKPWR0 - Bank 0 Fallback Power Mode */
0351 #define TMS570_FLASH_FBFALLBACK_BANKPWR0(val) BSP_FLD32(val,0, 1)
0352 #define TMS570_FLASH_FBFALLBACK_BANKPWR0_GET(reg) BSP_FLD32GET(reg,0, 1)
0353 #define TMS570_FLASH_FBFALLBACK_BANKPWR0_SET(reg,val) BSP_FLD32SET(reg, val,0, 1)
0354 
0355 
0356 /*--------------------TMS570_FLASH_FBPRDY--------------------*/
0357 /* field: BANKBUSY - Bank busy bits (one bit for each bank) */
0358 #define TMS570_FLASH_FBPRDY_BANKBUSY(val) BSP_FLD32(val,16, 23)
0359 #define TMS570_FLASH_FBPRDY_BANKBUSY_GET(reg) BSP_FLD32GET(reg,16, 23)
0360 #define TMS570_FLASH_FBPRDY_BANKBUSY_SET(reg,val) BSP_FLD32SET(reg, val,16, 23)
0361 
0362 /* field: PUMPRDY - Flash pump ready flag */
0363 #define TMS570_FLASH_FBPRDY_PUMPRDY BSP_BIT32(15)
0364 
0365 /* field: BANKRDY - Bank ready bits (one bit for each bank) */
0366 #define TMS570_FLASH_FBPRDY_BANKRDY(val) BSP_FLD32(val,0, 7)
0367 #define TMS570_FLASH_FBPRDY_BANKRDY_GET(reg) BSP_FLD32GET(reg,0, 7)
0368 #define TMS570_FLASH_FBPRDY_BANKRDY_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0369 
0370 
0371 /*---------------------TMS570_FLASH_FPAC1---------------------*/
0372 /* field: PSLEEP - Pump Sleep. */
0373 #define TMS570_FLASH_FPAC1_PSLEEP(val) BSP_FLD32(val,16, 26)
0374 #define TMS570_FLASH_FPAC1_PSLEEP_GET(reg) BSP_FLD32GET(reg,16, 26)
0375 #define TMS570_FLASH_FPAC1_PSLEEP_SET(reg,val) BSP_FLD32SET(reg, val,16, 26)
0376 
0377 /* field: PUMPPWR - Flash Charge Pump Fallback Power Mode */
0378 #define TMS570_FLASH_FPAC1_PUMPPWR BSP_BIT32(0)
0379 
0380 
0381 /*---------------------TMS570_FLASH_FPAC2---------------------*/
0382 /* field: PAGP - Pump Active Grace Period */
0383 #define TMS570_FLASH_FPAC2_PAGP(val) BSP_FLD32(val,0, 15)
0384 #define TMS570_FLASH_FPAC2_PAGP_GET(reg) BSP_FLD32GET(reg,0, 15)
0385 #define TMS570_FLASH_FPAC2_PAGP_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
0386 
0387 
0388 /*---------------------TMS570_FLASH_FMAC---------------------*/
0389 /* field: BANK - Bank Enable. */
0390 #define TMS570_FLASH_FMAC_BANK(val) BSP_FLD32(val,0, 2)
0391 #define TMS570_FLASH_FMAC_BANK_GET(reg) BSP_FLD32GET(reg,0, 2)
0392 #define TMS570_FLASH_FMAC_BANK_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
0393 
0394 
0395 /*--------------------TMS570_FLASH_FMSTAT--------------------*/
0396 /* field: ILA - Illegal Address */
0397 #define TMS570_FLASH_FMSTAT_ILA BSP_BIT32(14)
0398 
0399 /* field: PGV - Program Verify */
0400 #define TMS570_FLASH_FMSTAT_PGV BSP_BIT32(12)
0401 
0402 /* field: EV - Erase Verify */
0403 #define TMS570_FLASH_FMSTAT_EV BSP_BIT32(10)
0404 
0405 /* field: BUSY - Busy */
0406 #define TMS570_FLASH_FMSTAT_BUSY BSP_BIT32(8)
0407 
0408 /* field: ERS - Erase Active */
0409 #define TMS570_FLASH_FMSTAT_ERS BSP_BIT32(7)
0410 
0411 /* field: PGM - Program Active */
0412 #define TMS570_FLASH_FMSTAT_PGM BSP_BIT32(6)
0413 
0414 /* field: INVDAT - Invalid Data */
0415 #define TMS570_FLASH_FMSTAT_INVDAT BSP_BIT32(5)
0416 
0417 /* field: CSTAT - Command Status */
0418 #define TMS570_FLASH_FMSTAT_CSTAT BSP_BIT32(4)
0419 
0420 /* field: VOLTSTAT - Core Voltage Status */
0421 #define TMS570_FLASH_FMSTAT_VOLTSTAT BSP_BIT32(3)
0422 
0423 /* field: ESUSP - Erase Suspended */
0424 #define TMS570_FLASH_FMSTAT_ESUSP BSP_BIT32(2)
0425 
0426 /* field: PSUSP - Program Suspended */
0427 #define TMS570_FLASH_FMSTAT_PSUSP BSP_BIT32(1)
0428 
0429 /* field: SLOCK - Sector Lock Status */
0430 #define TMS570_FLASH_FMSTAT_SLOCK BSP_BIT32(0)
0431 
0432 
0433 /*-------------------TMS570_FLASH_FEMUDMSW-------------------*/
0434 /* field: EMU_DMSW - EEPROM Emulation Most Significant Data Word */
0435 /* Whole 32 bits */
0436 
0437 /*-------------------TMS570_FLASH_FEMUDLSW-------------------*/
0438 /* field: EMU_DLSW - EEPROM Emulation Least Significant Data Word */
0439 /* Whole 32 bits */
0440 
0441 /*--------------------TMS570_FLASH_FEMUECC--------------------*/
0442 /* field: EMU_ECC - This register can be written by the CPU in any mode. */
0443 #define TMS570_FLASH_FEMUECC_EMU_ECC(val) BSP_FLD32(val,0, 7)
0444 #define TMS570_FLASH_FEMUECC_EMU_ECC_GET(reg) BSP_FLD32GET(reg,0, 7)
0445 #define TMS570_FLASH_FEMUECC_EMU_ECC_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0446 
0447 
0448 /*-------------------TMS570_FLASH_FEMUADDR-------------------*/
0449 /* field: EMU_ADDR - EEPROM Emulation Address */
0450 #define TMS570_FLASH_FEMUADDR_EMU_ADDR(val) BSP_FLD32(val,3, 21)
0451 #define TMS570_FLASH_FEMUADDR_EMU_ADDR_GET(reg) BSP_FLD32GET(reg,3, 21)
0452 #define TMS570_FLASH_FEMUADDR_EMU_ADDR_SET(reg,val) BSP_FLD32SET(reg, val,3, 21)
0453 
0454 
0455 /*-------------------TMS570_FLASH_FDIAGCTRL-------------------*/
0456 /* field: DIAG_TRIG - Diagnostic Trigger */
0457 #define TMS570_FLASH_FDIAGCTRL_DIAG_TRIG BSP_BIT32(24)
0458 
0459 /* field: DIAG_EN_KEY - Diagnostic Enable Key */
0460 #define TMS570_FLASH_FDIAGCTRL_DIAG_EN_KEY(val) BSP_FLD32(val,16, 19)
0461 #define TMS570_FLASH_FDIAGCTRL_DIAG_EN_KEY_GET(reg) BSP_FLD32GET(reg,16, 19)
0462 #define TMS570_FLASH_FDIAGCTRL_DIAG_EN_KEY_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
0463 
0464 /* field: DIAG_ECC_SEL - Diagnostic SECDED Select */
0465 #define TMS570_FLASH_FDIAGCTRL_DIAG_ECC_SEL(val) BSP_FLD32(val,12, 14)
0466 #define TMS570_FLASH_FDIAGCTRL_DIAG_ECC_SEL_GET(reg) BSP_FLD32GET(reg,12, 14)
0467 #define TMS570_FLASH_FDIAGCTRL_DIAG_ECC_SEL_SET(reg,val) BSP_FLD32SET(reg, val,12, 14)
0468 
0469 
0470 /*-------------------TMS570_FLASH_FRAWDATAH-------------------*/
0471 /* field: RAW_DATA_ - Uncorrected Raw Data */
0472 /* Whole 32 bits */
0473 
0474 /*-------------------TMS570_FLASH_FRAWDATAL-------------------*/
0475 /* field: RAW_DATA_ - Uncorrected Raw Data. Same as FRAW_DATAH but stores lower 32 bits. */
0476 /* Whole 32 bits */
0477 
0478 /*--------------------TMS570_FLASH_FRAWECC--------------------*/
0479 /* field: PIPE_BUF - Error came from pipeline buffer hit */
0480 #define TMS570_FLASH_FRAWECC_PIPE_BUF BSP_BIT32(8)
0481 
0482 /* field: RAW_ECC - Uncorrected Raw ECC */
0483 #define TMS570_FLASH_FRAWECC_RAW_ECC(val) BSP_FLD32(val,0, 7)
0484 #define TMS570_FLASH_FRAWECC_RAW_ECC_GET(reg) BSP_FLD32GET(reg,0, 7)
0485 #define TMS570_FLASH_FRAWECC_RAW_ECC_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0486 
0487 
0488 /*--------------------TMS570_FLASH_FPAROVR--------------------*/
0489 /* field: BNK_INV_PAR - Buffer Invert Parity */
0490 #define TMS570_FLASH_FPAROVR_BNK_INV_PAR BSP_BIT32(16)
0491 
0492 /* field: BUS_PAR_DIS - Disable Bus Parity */
0493 #define TMS570_FLASH_FPAROVR_BUS_PAR_DIS(val) BSP_FLD32(val,12, 15)
0494 #define TMS570_FLASH_FPAROVR_BUS_PAR_DIS_GET(reg) BSP_FLD32GET(reg,12, 15)
0495 #define TMS570_FLASH_FPAROVR_BUS_PAR_DIS_SET(reg,val) BSP_FLD32SET(reg, val,12, 15)
0496 
0497 /* field: PAR_OVR_KEY - When this value is 101, the selected ADD_INV_PAR and DAT_INV_PAR fields will become active. */
0498 #define TMS570_FLASH_FPAROVR_PAR_OVR_KEY(val) BSP_FLD32(val,9, 11)
0499 #define TMS570_FLASH_FPAROVR_PAR_OVR_KEY_GET(reg) BSP_FLD32GET(reg,9, 11)
0500 #define TMS570_FLASH_FPAROVR_PAR_OVR_KEY_SET(reg,val) BSP_FLD32SET(reg, val,9, 11)
0501 
0502 /* field: ADD_INV_PAR - Address Odd Parity */
0503 #define TMS570_FLASH_FPAROVR_ADD_INV_PAR BSP_BIT32(8)
0504 
0505 /* field: DAT_INV_PAR - Data Odd Parity */
0506 #define TMS570_FLASH_FPAROVR_DAT_INV_PAR(val) BSP_FLD32(val,0, 7)
0507 #define TMS570_FLASH_FPAROVR_DAT_INV_PAR_GET(reg) BSP_FLD32GET(reg,0, 7)
0508 #define TMS570_FLASH_FPAROVR_DAT_INV_PAR_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0509 
0510 
0511 /*------------------TMS570_FLASH_FEDACSDIS2------------------*/
0512 /* field: BankID3_Inverse - The bank ID inverse bits are used with the bank ID bits to select the bank for which a sector */
0513 #define TMS570_FLASH_FEDACSDIS2_BankID3_Inverse(val) BSP_FLD32(val,29, 31)
0514 #define TMS570_FLASH_FEDACSDIS2_BankID3_Inverse_GET(reg) BSP_FLD32GET(reg,29, 31)
0515 #define TMS570_FLASH_FEDACSDIS2_BankID3_Inverse_SET(reg,val) BSP_FLD32SET(reg, val,29, 31)
0516 
0517 /* field: SectorID3_inverse - The sector ID inverse bits are used with the sector ID bits to determine which sector is disabled. */
0518 #define TMS570_FLASH_FEDACSDIS2_SectorID3_inverse(val) BSP_FLD32(val,24, 27)
0519 #define TMS570_FLASH_FEDACSDIS2_SectorID3_inverse_GET(reg) BSP_FLD32GET(reg,24, 27)
0520 #define TMS570_FLASH_FEDACSDIS2_SectorID3_inverse_SET(reg,val) BSP_FLD32SET(reg, val,24, 27)
0521 
0522 /* field: BankID3 - The bank ID bits are used with the bank ID inverse bits to select the bank for which a sector */
0523 #define TMS570_FLASH_FEDACSDIS2_BankID3(val) BSP_FLD32(val,21, 23)
0524 #define TMS570_FLASH_FEDACSDIS2_BankID3_GET(reg) BSP_FLD32GET(reg,21, 23)
0525 #define TMS570_FLASH_FEDACSDIS2_BankID3_SET(reg,val) BSP_FLD32SET(reg, val,21, 23)
0526 
0527 /* field: SectorID3 - The sector ID bits are used with the sector ID inverse bits to determine which sector is */
0528 #define TMS570_FLASH_FEDACSDIS2_SectorID3(val) BSP_FLD32(val,16, 19)
0529 #define TMS570_FLASH_FEDACSDIS2_SectorID3_GET(reg) BSP_FLD32GET(reg,16, 19)
0530 #define TMS570_FLASH_FEDACSDIS2_SectorID3_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
0531 
0532 /* field: BankID2_Inverse - is disabled. The only bank that supports sector disable is bank 7. */
0533 #define TMS570_FLASH_FEDACSDIS2_BankID2_Inverse(val) BSP_FLD32(val,13, 15)
0534 #define TMS570_FLASH_FEDACSDIS2_BankID2_Inverse_GET(reg) BSP_FLD32GET(reg,13, 15)
0535 #define TMS570_FLASH_FEDACSDIS2_BankID2_Inverse_SET(reg,val) BSP_FLD32SET(reg, val,13, 15)
0536 
0537 /* field: SectorID2_inverse - The sector ID inverse bits are used with the sector ID bits to determine which sector is */
0538 #define TMS570_FLASH_FEDACSDIS2_SectorID2_inverse(val) BSP_FLD32(val,8, 11)
0539 #define TMS570_FLASH_FEDACSDIS2_SectorID2_inverse_GET(reg) BSP_FLD32GET(reg,8, 11)
0540 #define TMS570_FLASH_FEDACSDIS2_SectorID2_inverse_SET(reg,val) BSP_FLD32SET(reg, val,8, 11)
0541 
0542 /* field: BankID2 - The bank ID bits are used with the bank ID inverse bits to select the bank for which a sector */
0543 #define TMS570_FLASH_FEDACSDIS2_BankID2(val) BSP_FLD32(val,5, 7)
0544 #define TMS570_FLASH_FEDACSDIS2_BankID2_GET(reg) BSP_FLD32GET(reg,5, 7)
0545 #define TMS570_FLASH_FEDACSDIS2_BankID2_SET(reg,val) BSP_FLD32SET(reg, val,5, 7)
0546 
0547 /* field: SectorID2 - The sector ID bits are used with the sector ID inverse bits to determine which sector is */
0548 #define TMS570_FLASH_FEDACSDIS2_SectorID2(val) BSP_FLD32(val,0, 3)
0549 #define TMS570_FLASH_FEDACSDIS2_SectorID2_GET(reg) BSP_FLD32GET(reg,0, 3)
0550 #define TMS570_FLASH_FEDACSDIS2_SectorID2_SET(reg,val) BSP_FLD32SET(reg, val,0, 3)
0551 
0552 
0553 /*-------------------TMS570_FLASH_FSMWRENA-------------------*/
0554 /* field: WR_ENA - Flash State Machine Write Enable */
0555 #define TMS570_FLASH_FSMWRENA_WR_ENA(val) BSP_FLD32(val,0, 2)
0556 #define TMS570_FLASH_FSMWRENA_WR_ENA_GET(reg) BSP_FLD32GET(reg,0, 2)
0557 #define TMS570_FLASH_FSMWRENA_WR_ENA_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
0558 
0559 
0560 /*-------------------TMS570_FLASH_FSMSECTOR-------------------*/
0561 /* field: SECT_ERASED - Sectors Erased */
0562 #define TMS570_FLASH_FSMSECTOR_SECT_ERASED(val) BSP_FLD32(val,16, 31)
0563 #define TMS570_FLASH_FSMSECTOR_SECT_ERASED_GET(reg) BSP_FLD32GET(reg,16, 31)
0564 #define TMS570_FLASH_FSMSECTOR_SECT_ERASED_SET(reg,val) BSP_FLD32SET(reg, val,16, 31)
0565 
0566 
0567 /*-----------------TMS570_FLASH_EEPROMCONFIG-----------------*/
0568 /* field: EWAIT - EEPROM Wait state Counter */
0569 #define TMS570_FLASH_EEPROMCONFIG_EWAIT(val) BSP_FLD32(val,16, 19)
0570 #define TMS570_FLASH_EEPROMCONFIG_EWAIT_GET(reg) BSP_FLD32GET(reg,16, 19)
0571 #define TMS570_FLASH_EEPROMCONFIG_EWAIT_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
0572 
0573 /* field: AUTOSUSP_EN - Auto Suspend Enable */
0574 #define TMS570_FLASH_EEPROMCONFIG_AUTOSUSP_EN BSP_BIT32(8)
0575 
0576 /* field: AUTOSTART_GRACE - Auto-suspend Startup Grace Period */
0577 #define TMS570_FLASH_EEPROMCONFIG_AUTOSTART_GRACE(val) BSP_FLD32(val,0, 7)
0578 #define TMS570_FLASH_EEPROMCONFIG_AUTOSTART_GRACE_GET(reg) BSP_FLD32GET(reg,0, 7)
0579 #define TMS570_FLASH_EEPROMCONFIG_AUTOSTART_GRACE_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0580 
0581 
0582 /*--------------------TMS570_FLASH_EECTRL1--------------------*/
0583 /* field: EDACMODE - Error Correction Mode. */
0584 #define TMS570_FLASH_EECTRL1_EDACMODE(val) BSP_FLD32(val,16, 19)
0585 #define TMS570_FLASH_EECTRL1_EDACMODE_GET(reg) BSP_FLD32GET(reg,16, 19)
0586 #define TMS570_FLASH_EECTRL1_EDACMODE_SET(reg,val) BSP_FLD32SET(reg, val,16, 19)
0587 
0588 /* field: EE_EOFEN - EEPROM Emulation Event on a correctable One's Fail Enable bit */
0589 #define TMS570_FLASH_EECTRL1_EE_EOFEN BSP_BIT32(10)
0590 
0591 /* field: EE_EZFEN - EEPROM Emulation Event on a correctable Zero's Fail Enable bit */
0592 #define TMS570_FLASH_EECTRL1_EE_EZFEN BSP_BIT32(9)
0593 
0594 /* field: EE_EPEN - EEPROM Emulation Error Profiling Enable. */
0595 #define TMS570_FLASH_EECTRL1_EE_EPEN BSP_BIT32(8)
0596 
0597 
0598 /*--------------------TMS570_FLASH_EECTRL2--------------------*/
0599 /* field: EE_SEC_THRESHOLD - EEPROM Emulation Single Error Correction Threshold */
0600 #define TMS570_FLASH_EECTRL2_EE_SEC_THRESHOLD(val) BSP_FLD32(val,0, 15)
0601 #define TMS570_FLASH_EECTRL2_EE_SEC_THRESHOLD_GET(reg) BSP_FLD32GET(reg,0, 15)
0602 #define TMS570_FLASH_EECTRL2_EE_SEC_THRESHOLD_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
0603 
0604 
0605 /*------------------TMS570_FLASH_EECORERRCNT------------------*/
0606 /* field: EE_ERRCNT - Single Error Correction Count */
0607 #define TMS570_FLASH_EECORERRCNT_EE_ERRCNT(val) BSP_FLD32(val,0, 15)
0608 #define TMS570_FLASH_EECORERRCNT_EE_ERRCNT_GET(reg) BSP_FLD32GET(reg,0, 15)
0609 #define TMS570_FLASH_EECORERRCNT_EE_ERRCNT_SET(reg,val) BSP_FLD32SET(reg, val,0, 15)
0610 
0611 
0612 /*------------------TMS570_FLASH_EECORERRADD------------------*/
0613 /* field: COR_ERR_ADD - Correctable Error Address */
0614 #define TMS570_FLASH_EECORERRADD_COR_ERR_ADD(val) BSP_FLD32(val,3, 31)
0615 #define TMS570_FLASH_EECORERRADD_COR_ERR_ADD_GET(reg) BSP_FLD32GET(reg,3, 31)
0616 #define TMS570_FLASH_EECORERRADD_COR_ERR_ADD_SET(reg,val) BSP_FLD32SET(reg, val,3, 31)
0617 
0618 /* field: B_OFF - Byte offset */
0619 #define TMS570_FLASH_EECORERRADD_B_OFF(val) BSP_FLD32(val,0, 2)
0620 #define TMS570_FLASH_EECORERRADD_B_OFF_GET(reg) BSP_FLD32GET(reg,0, 2)
0621 #define TMS570_FLASH_EECORERRADD_B_OFF_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
0622 
0623 
0624 /*------------------TMS570_FLASH_EECORERRPOS------------------*/
0625 /* field: TYPE - ErrorType */
0626 #define TMS570_FLASH_EECORERRPOS_TYPE BSP_BIT32(8)
0627 
0628 /* field: EE_ERR_POS - The bit address of the single bit error */
0629 #define TMS570_FLASH_EECORERRPOS_EE_ERR_POS(val) BSP_FLD32(val,0, 7)
0630 #define TMS570_FLASH_EECORERRPOS_EE_ERR_POS_GET(reg) BSP_FLD32GET(reg,0, 7)
0631 #define TMS570_FLASH_EECORERRPOS_EE_ERR_POS_SET(reg,val) BSP_FLD32SET(reg, val,0, 7)
0632 
0633 
0634 /*-------------------TMS570_FLASH_EESTATUS-------------------*/
0635 /* field: EE_D_UNC_ERR - Diagnostic Mode Uncorrectable Error Status Flag */
0636 #define TMS570_FLASH_EESTATUS_EE_D_UNC_ERR BSP_BIT32(12)
0637 
0638 /* field: EE_UNC_ERR - EEPROM Emulation Uncorrectable Error Flag */
0639 #define TMS570_FLASH_EESTATUS_EE_UNC_ERR BSP_BIT32(8)
0640 
0641 /* field: EE_CMG - EEPROM Emulation Compare Malfunction Good */
0642 #define TMS570_FLASH_EESTATUS_EE_CMG BSP_BIT32(6)
0643 
0644 /* field: EE_CME - . */
0645 #define TMS570_FLASH_EESTATUS_EE_CME BSP_BIT32(4)
0646 
0647 /* field: EE_D_COR_ERR - Diagnostic Correctable Error Flag */
0648 #define TMS570_FLASH_EESTATUS_EE_D_COR_ERR BSP_BIT32(3)
0649 
0650 /* field: EE_ERR_ONE_FLG - Error on One Fail Error Flag */
0651 #define TMS570_FLASH_EESTATUS_EE_ERR_ONE_FLG BSP_BIT32(2)
0652 
0653 /* field: EE_ERR_ZERO_FLG - Error on Zero Fail Error Flag */
0654 #define TMS570_FLASH_EESTATUS_EE_ERR_ZERO_FLG BSP_BIT32(1)
0655 
0656 /* field: EE_ERR_PRF_FLG - Error Profiling Error Flag */
0657 #define TMS570_FLASH_EESTATUS_EE_ERR_PRF_FLG BSP_BIT32(0)
0658 
0659 
0660 /*------------------TMS570_FLASH_EEUNCERRADD------------------*/
0661 /* field: UNC_ERR_ADD - Un-correctable Error Address */
0662 #define TMS570_FLASH_EEUNCERRADD_UNC_ERR_ADD(val) BSP_FLD32(val,3, 31)
0663 #define TMS570_FLASH_EEUNCERRADD_UNC_ERR_ADD_GET(reg) BSP_FLD32GET(reg,3, 31)
0664 #define TMS570_FLASH_EEUNCERRADD_UNC_ERR_ADD_SET(reg,val) BSP_FLD32SET(reg, val,3, 31)
0665 
0666 /* field: B_OFF - Byte offset */
0667 #define TMS570_FLASH_EEUNCERRADD_B_OFF(val) BSP_FLD32(val,0, 2)
0668 #define TMS570_FLASH_EEUNCERRADD_B_OFF_GET(reg) BSP_FLD32GET(reg,0, 2)
0669 #define TMS570_FLASH_EEUNCERRADD_B_OFF_SET(reg,val) BSP_FLD32SET(reg, val,0, 2)
0670 
0671 
0672 /*-------------------TMS570_FLASH_FCFGBANK-------------------*/
0673 /* field: EE_BANK_WIDTH - Bank 7 width (144 bits wide) */
0674 #define TMS570_FLASH_FCFGBANK_EE_BANK_WIDTH(val) BSP_FLD32(val,20, 31)
0675 #define TMS570_FLASH_FCFGBANK_EE_BANK_WIDTH_GET(reg) BSP_FLD32GET(reg,20, 31)
0676 #define TMS570_FLASH_FCFGBANK_EE_BANK_WIDTH_SET(reg,val) BSP_FLD32SET(reg, val,20, 31)
0677 
0678 /* field: MAIN_BANK_WIDTH - Width of main flash banks (144 bits wide) */
0679 #define TMS570_FLASH_FCFGBANK_MAIN_BANK_WIDTH(val) BSP_FLD32(val,4, 15)
0680 #define TMS570_FLASH_FCFGBANK_MAIN_BANK_WIDTH_GET(reg) BSP_FLD32GET(reg,4, 15)
0681 #define TMS570_FLASH_FCFGBANK_MAIN_BANK_WIDTH_SET(reg,val) BSP_FLD32SET(reg, val,4, 15)
0682 
0683 
0684 
0685 #endif /* LIBBSP_ARM_TMS570_FLASH */