Synergy Software Package User's Manual

Interface for the flash controller. More...

Data Structures

struct  flash_fmi_block_info_t
 
struct  flash_fmi_regions_t
 
struct  flash_info_t
 
struct  flash_callback_args_t
 
struct  flash_cfg_t
 
struct  flash_api_t
 
struct  flash_instance_t
 

Macros

#define FLASH_API_VERSION_MAJOR   (2U)
 
#define FLASH_API_VERSION_MINOR   (0U)
 

Typedefs

typedef void flash_ctrl_t
 

Enumerations

enum  flash_result_t { FLASH_RESULT_BLANK, FLASH_RESULT_NOT_BLANK, FLASH_RESULT_BGO_ACTIVE }
 
enum  flash_startup_area_swap_t { FLASH_STARTUP_AREA_BLOCK1 = 0, FLASH_STARTUP_AREA_BLOCK0, FLASH_STARTUP_AREA_BTFLG }
 
enum  flash_event_t {
  FLASH_EVENT_ERASE_COMPLETE, FLASH_EVENT_WRITE_COMPLETE, FLASH_EVENT_BLANK, FLASH_EVENT_NOT_BLANK,
  FLASH_EVENT_ERR_DF_ACCESS, FLASH_EVENT_ERR_CF_ACCESS, FLASH_EVENT_ERR_CMD_LOCKED, FLASH_EVENT_ERR_FAILURE,
  FLASH_EVENT_ERR_ONE_BIT
}
 
enum  flash_id_code_mode_t { FLASH_ID_CODE_MODE_UNLOCKED, FLASH_ID_CODE_MODE_LOCKED_WITH_ALL_ERASE_SUPPORT, FLASH_ID_CODE_MODE_LOCKED }
 

Detailed Description

Interface for the flash controller.

Summary

The Flash interface provides the functionality necessary to read, write, erase and blank check the Flash memory. Additionally functions are provided to configure the access window and swap areas of the flash memory.

Implemented by:

Related SSP architecture topics:

Flash Interface description: Flash Driver

Macro Definition Documentation

◆ FLASH_API_VERSION_MAJOR

#define FLASH_API_VERSION_MAJOR   (2U)

FLASH HAL API version number (Major)

◆ FLASH_API_VERSION_MINOR

#define FLASH_API_VERSION_MINOR   (0U)

FLASH HAL API version number (Minor)

Typedef Documentation

◆ flash_ctrl_t

typedef void flash_ctrl_t

Flash control block. Allocate an instance specific control block to pass into the flash API calls.

Implemented as

Enumeration Type Documentation

◆ flash_event_t

Event types returned by the ISR callback when used in Data Flash BGO mode

Enumerator
FLASH_EVENT_ERASE_COMPLETE 

Erase operation successfully completed.

FLASH_EVENT_WRITE_COMPLETE 

Write operation successfully completed.

FLASH_EVENT_BLANK 

Blank check operation successfully completed. Specified area is blank.

FLASH_EVENT_NOT_BLANK 

Blank check operation successfully completed. Specified area is NOT blank.

FLASH_EVENT_ERR_DF_ACCESS 

Data Flash operation failed. Can occur when writing an unerased section.

FLASH_EVENT_ERR_CF_ACCESS 

Code Flash operation failed. Can occur when writing an unerased section.

FLASH_EVENT_ERR_CMD_LOCKED 

Operation failed, FCU is in Locked state (often result of an illegal command)

FLASH_EVENT_ERR_FAILURE 

Erase or Program Operation failed.

FLASH_EVENT_ERR_ONE_BIT 

A 1-bit error has been corrected when reading the flash memory area by the sequencer.

◆ flash_id_code_mode_t

ID Code Modes for writing to ID code registers

Enumerator
FLASH_ID_CODE_MODE_UNLOCKED 

ID code is ignored.

FLASH_ID_CODE_MODE_LOCKED_WITH_ALL_ERASE_SUPPORT 

ID code is checked. All erase is available.

FLASH_ID_CODE_MODE_LOCKED 

ID code is checked.

◆ flash_result_t

Result type for certain operations

Enumerator
FLASH_RESULT_BLANK 

Return status for Blank Check Function.

FLASH_RESULT_NOT_BLANK 

Return status for Blank Check Function.

FLASH_RESULT_BGO_ACTIVE 

Flash is configured for BGO mode. Result is returned in callback.

◆ flash_startup_area_swap_t

Parameter for specifying the startup area swap being requested by startupAreaSelect()

Enumerator
FLASH_STARTUP_AREA_BLOCK1 

Startup area will be set to Block 1.

FLASH_STARTUP_AREA_BLOCK0 

Startup area will be set to Block 0.

FLASH_STARTUP_AREA_BTFLG 

Startup area will be set based on the value of the BTFLG.