iLLD_TC27xD  1.0
IfxFlash.h File Reference

FLASH basic functionality. More...

#include "_Impl/IfxFlash_cfg.h"
#include "_Utilities/Ifx_Assert.h"
#include "IfxFlash_reg.h"

Go to the source code of this file.

Data Structures

struct  IfxFlash_ErrorTracking_Address
 Error tracking address structure. More...
 

Enumerations

enum  IfxFlash_ErrorTracking {
  IfxFlash_ErrorTracking_none = 0,
  IfxFlash_ErrorTracking_correctedSingleBitError = 1,
  IfxFlash_ErrorTracking_correctedDoubleBitError = 2,
  IfxFlash_ErrorTracking_correctedSingleOrDoubleBitError = 3,
  IfxFlash_ErrorTracking_uncorrectableMultiBitError = 4
}
 enumeration for Flash Error tracking More...
 
enum  IfxFlash_PortId {
  IfxFlash_PortId_PortId_0 = 0,
  IfxFlash_PortId_PortId_1 = 1
}
 Corrected/UnCorrected Bits Address Buffer Port Id. More...
 

Functions

IFX_EXTERN void IfxFlash_clearStatus (uint32 flash)
 Performs the "Clear Status" sequence. Operation and error flags are cleared. More...
 
IFX_EXTERN void IfxFlash_disableWriteProtection (uint32 flash, IfxFlash_UcbType ucb, uint32 *password)
 The password protection of the selected UCB (if this UCB offers this feature) is temporarily disabled. The command fails by setting PROER when any of the supplied PWs does not match. In this case until the next application reset all further calls of "Disable Protection" fail with PROER independent of the supplied password. More...
 
IFX_EXTERN uint8 IfxFlash_enterPageMode (uint32 pageAddr)
 Performs the sequence for entering program page mode. More...
 
IFX_EXTERN void IfxFlash_eraseMultiplePhysicalSectors (uint32 sectorAddr, uint32 numSector)
 Performs the erase sequence for n sectors in program or data flash. More...
 
IFX_EXTERN void IfxFlash_eraseMultipleSectors (uint32 sectorAddr, uint32 numSector)
 Performs the erase sequence for n sectors in program or data flash. More...
 
IFX_EXTERN void IfxFlash_erasePhysicalSector (uint32 sectorAddr)
 Performs the erase sequence for a physical sector in program or data flash. More...
 
IFX_EXTERN void IfxFlash_eraseSector (uint32 sectorAddr)
 Performs the erase sequence for a sector in program or data flash. More...
 
IFX_EXTERN void IfxFlash_eraseVerifyMultipleSectors (uint32 sectorAddr, uint32 numSector)
 Performs the "Erase Verify" sequence for multiple sectors. More...
 
IFX_EXTERN void IfxFlash_eraseVerifySector (uint32 sectorAddr)
 Performs the "Erase Verify" sequence. More...
 
IFX_EXTERN void IfxFlash_loadPage (uint32 pageAddr, uint32 wordL, uint32 wordU)
 performs a load page sequence with a single 64bit access More...
 
IFX_EXTERN void IfxFlash_loadPage2X32 (uint32 pageAddr, uint32 wordL, uint32 wordU)
 performs a load page sequence with two 32bit accesses More...
 
IFX_EXTERN void IfxFlash_resetToRead (uint32 flash)
 reset to read mode More...
 
IFX_EXTERN void IfxFlash_resumeProtection (uint32 flash)
 Performs the "Resume Protection" sequence. More...
 
IFX_EXTERN void IfxFlash_suspendResumeMultipleSectors (uint32 sectorAddr, uint32 numSector)
 Performs the "Suspend Resume" sequence for multiple sectors. More...
 
IFX_EXTERN void IfxFlash_suspendResumeSector (uint32 sectorAddr)
 Performs the "Suspend Resume" sequence. More...
 
IFX_EXTERN uint8 IfxFlash_waitUnbusy (uint32 flash, IfxFlash_FlashType flashType)
 Polls the selected status flag in flash status register until it turns to 0. More...
 
IFX_EXTERN void IfxFlash_writeBurst (uint32 pageAddr)
 Performs the "Write Burst" sequence, similar to write page but performs a burst transfer instead of page.Make sure the appropriate amount of data is loaded using load page command. More...
 
IFX_EXTERN void IfxFlash_writePage (uint32 pageAddr)
 Performs the "Write Page" sequence. More...
 
IFX_EXTERN void IfxFlash_writePageOnce (uint32 pageAddr)
 Performs the "Write Page Once" sequence, similar to write page but performs a program verify after writing. More...
 
IFX_EXTERN void IfxFlash_clearCorrectableErrorTracking (IfxFlash_PortId portId)
 Clear the Correctable errors in Corrected Bits Address Buffer Configuration Port x (CBABCFGx) register. More...
 
IFX_EXTERN void IfxFlash_clearUncorrectableErrorTracking (IfxFlash_PortId portId)
 Select the uncorrectable errors in UnCorrectable Bits Address Buffer Configuration Port x (UBABCFGx) register. More...
 
IFX_EXTERN void IfxFlash_disableCorrectableErrorTracking (IfxFlash_PortId portId, boolean disable)
 Disable the Correctable errors in Corrected Bits Address Buffer Configuration Port x (CBABCFGx) register. More...
 
IFX_EXTERN void IfxFlash_disableUncorrectableErrorTracking (IfxFlash_PortId portId, boolean disable)
 Clear the uncorrectable errors in UnCorrectable Bits Address Buffer Configuration Port x (UBABCFGx) register. More...
 
IFX_EXTERN uint32 IfxFlash_getTrackedCorrectableErrors (IfxFlash_PortId portId, IfxFlash_ErrorTracking_Address *trackedFlashAdresses)
 Returns the tracked correctable error addresses, error types and number of errors which are stored in the CBAB registers. More...
 
IFX_EXTERN uint32 IfxFlash_getTrackedUncorrectableErrors (IfxFlash_PortId portId, IfxFlash_ErrorTracking_Address *trackedFlashAdresses)
 Returns the tracked uncorrectable error addresses, error types and number of errors which are stored in the UBAB registers. More...
 
IFX_EXTERN void IfxFlash_selectCorrectableErrorTracking (IfxFlash_PortId portId, IfxFlash_ErrorTracking errorTracking)
 Enables error tracking for correctable flash errors. More...
 
IFX_EXTERN void IfxFlash_selectUncorrectableErrorTracking (IfxFlash_PortId portId, IfxFlash_ErrorTracking errorTracking)
 Enables error tracking for uncorrectable flash errors. More...
 

Detailed Description

FLASH basic functionality.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file IfxFlash.h.