MTB CAT1 Peripheral driver library

General Description

Data Structures

struct  cy_stc_flash_notify_t
 Flash notification configuration structure. More...
 

Enumerations

enum  cy_en_flashdrv_status_t {
  CY_FLASH_DRV_SUCCESS = 0x00UL,
  CY_FLASH_DRV_INV_PROT = ( CY_FLASH_ID_ERROR + 0x0UL),
  CY_FLASH_DRV_INVALID_FM_PL = ( CY_FLASH_ID_ERROR + 0x1UL),
  CY_FLASH_DRV_INVALID_FLASH_ADDR = ( CY_FLASH_ID_ERROR + 0x2UL),
  CY_FLASH_DRV_ROW_PROTECTED = ( CY_FLASH_ID_ERROR + 0x3UL),
  CY_FLASH_DRV_IPC_BUSY = ( CY_FLASH_ID_ERROR + 0x5UL),
  CY_FLASH_DRV_INVALID_INPUT_PARAMETERS = ( CY_FLASH_ID_ERROR + 0x6UL),
  CY_FLASH_DRV_PL_ROW_COMP_FA = ( CY_FLASH_ID_ERROR + 0x22UL),
  CY_FLASH_DRV_ERR_UNC = ( CY_FLASH_ID_ERROR + 0xFFUL),
  CY_FLASH_DRV_PROGRESS_NO_ERROR = ( CY_FLASH_ID_INFO + 0x0UL),
  CY_FLASH_DRV_OPERATION_STARTED = ( CY_FLASH_ID_INFO + 0x1UL),
  CY_FLASH_DRV_OPCODE_BUSY = ( CY_FLASH_ID_INFO + 0x2UL),
  CY_FLASH_DRV_CHECKSUM_NON_ZERO = ( CY_FLASH_ID_ERROR + 0x4UL),
  CY_FLASH_DRV_NO_ERASE_SUSPEND = ( CY_FLASH_ID_ERROR + 0x7UL),
  CY_FLASH_DRV_FLASH_NOT_ERASED = ( CY_FLASH_ID_ERROR + 0x8UL),
  CY_FLASH_DRV_NO_ERASE_ONGOING = ( CY_FLASH_ID_ERROR + 0x9UL),
  CY_FLASH_DRV_ACTIVE_ERASE = ( CY_FLASH_ID_ERROR + 0xAUL),
  CY_FLASH_DRV_INVALID_DATA_WIDTH = ( CY_FLASH_ID_ERROR + 0xBUL),
  CY_FLASH_DRV_FLASH_SAFTEY_ENABLED = ( CY_FLASH_ID_ERROR + 0xCUL),
  CY_FLASH_DRV_INVALID_SFLASH_ADDR = ( CY_FLASH_ID_ERROR + 0xDUL),
  CY_FLASH_DRV_SFLASH_BACKUP_ERASED = ( CY_FLASH_ID_ERROR + 0xEUL),
  CY_FLASH_DRV_SECTOR_SUSPEND = ( CY_FLASH_ID_ERROR + 0xFUL),
  CY_FLASH_DRV_SROM_API_TIMEOUT = ( CY_FLASH_ID_ERROR + 0x10UL)
}
 This enum has the return values of the Flash driver. More...
 
enum  cy_en_bankmode_t {
  CY_FLASH_SINGLE_BANK_MODE = 0U,
  CY_FLASH_DUAL_BANK_MODE = 1U
}
 Flash Dual bank mode configuration. More...
 
enum  cy_en_maptype_t {
  CY_FLASH_MAPPING_A = 0U,
  CY_FLASH_MAPPING_B = 1U
}
 Flash Dual bank mode Mapping configuration. More...
 
enum  cy_en_flash_programrow_datasize_t {
  CY_FLASH_PROGRAMROW_DATA_SIZE_8BIT = (0x00UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_16BIT = (0x01UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_32BIT = (0x02UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_64BIT = (0x03UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_128BIT = (0x04UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_256BIT = (0x05UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_512BIT = (0x06UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_1024BIT = (0x07UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_2048BIT = (0x08UL),
  CY_FLASH_PROGRAMROW_DATA_SIZE_4096BIT = (0x09UL)
}
 Flash Program row data size configuration. More...
 
enum  cy_en_flash_programrow_blocking_t {
  CY_FLASH_PROGRAMROW_NON_BLOCKING = (0x00UL),
  CY_FLASH_PROGRAMROW_BLOCKING = (0x01UL)
}
 Flash Program row function execution type configuration. More...
 
enum  cy_en_flash_programrow_skipblankcheck_t {
  CY_FLASH_PROGRAMROW_BLANK_CHECK = (0x00UL),
  CY_FLASH_PROGRAMROW_SKIP_BLANK_CHECK = (0x01UL)
}
 Flash blank check on Program row configuration. More...
 
enum  cy_en_flash_programrow_location_t { CY_FLASH_PROGRAMROW_DATA_LOCATION_SRAM = (0x01UL) }
 Flash Program row data location configuration. More...
 
enum  cy_en_flash_programrow_intrmask_t {
  CY_FLASH_PROGRAMROW_NOT_SET_INTR_MASK = (0x00UL),
  CY_FLASH_PROGRAMROW_SET_INTR_MASK = (0x01UL)
}
 Flash Program row interrupt mask configuration. More...
 
enum  cy_en_flash_erasesector_blocking_t {
  CY_FLASH_ERASESECTOR_NON_BLOCKING = (0x00UL),
  CY_FLASH_ERASESECTOR_BLOCKING = (0x01UL)
}
 Flash Erase sector function execution type configuration. More...
 
enum  cy_en_flash_erasesector_intrmask_t {
  CY_FLASH_ERASESECTOR_NOT_SET_INTR_MASK = (0x00UL),
  CY_FLASH_ERASESECTOR_SET_INTR_MASK = (0x01UL)
}
 Flash Erase sector interrupt mask configuration. More...
 
enum  cy_en_flash_checksum_bank_t {
  CY_FLASH_CHECKSUM_BANK0 = (0x00UL),
  CY_FLASH_CHECKSUM_BANK1 = (0x01UL)
}
 Flash checksum bank configuration. More...
 
enum  cy_en_flash_checksum_scope_t {
  CY_FLASH_CHECKSUM_PAGE = (0x00UL),
  CY_FLASH_CHECKSUM_WHOLE = (0x01UL)
}
 Flash checksum page configuration. More...
 
enum  cy_en_flash_checksum_region_t {
  CY_FLASH_CHECKSUM_MAIN = (0x00UL),
  CY_FLASH_CHECKSUM_WORK = (0x01UL),
  CY_FLASH_CHECKSUM_SUPERVISORY = (0x02UL)
}
 Flash checksum region configuration. More...
 
enum  cy_en_flash_computehash_type_t {
  CY_FLASH_COMPUTEHASH_BASIC = (0x00UL),
  CY_FLASH_COMPUTEHASH_CRC8 = (0x01UL)
}
 Flash compute hash configuration. More...
 
enum  cy_en_flash_eraseresume_setintr_t {
  CY_FLASH_ERASERESUME_NOT_SET_INTR_MASK = (0x00UL),
  CY_FLASH_ERASERESUME_SET_INTR_MASK = (0x01UL)
}
 Flash Erase resume interrupt mask configuration. More...
 
enum  cy_en_flash_eraseresume_blocking_t {
  CY_FLASH_ERASERESUME_NON_BLOCKING = (0x00UL),
  CY_FLASH_ERASERESUME_BLOCKING = (0x01UL)
}
 Flash Erase resume function execution type configuration. More...
 
enum  cy_en_flash_driver_blocking_t {
  CY_FLASH_DRIVER_NON_BLOCKING = (0x00UL),
  CY_FLASH_DRIVER_BLOCKING = (0x01UL)
}
 Flash driver function execution type configuration. More...
 

Enumeration Type Documentation

◆ cy_en_flashdrv_status_t

This enum has the return values of the Flash driver.

Enumerator
CY_FLASH_DRV_SUCCESS 

Success.

CY_FLASH_DRV_INV_PROT 

Invalid device protection state.

CY_FLASH_DRV_INVALID_FM_PL 

Invalid flash page latch address.

CY_FLASH_DRV_INVALID_FLASH_ADDR 

Invalid flash address.

CY_FLASH_DRV_ROW_PROTECTED 

Row is write protected.

CY_FLASH_DRV_IPC_BUSY 

IPC structure is already locked by another process.

CY_FLASH_DRV_INVALID_INPUT_PARAMETERS 

Input parameters passed to Flash API are not valid.

CY_FLASH_DRV_PL_ROW_COMP_FA 

Comparison between Page Latches and FM row failed.

CY_FLASH_DRV_ERR_UNC 

Unknown error code.

See Cy_Flash_GetExternalStatus()

CY_FLASH_DRV_PROGRESS_NO_ERROR 

Command in progress; no error.

CY_FLASH_DRV_OPERATION_STARTED 

Flash operation is successfully initiated.

CY_FLASH_DRV_OPCODE_BUSY 

Flash is under operation.

CY_FLASH_DRV_CHECKSUM_NON_ZERO 

Checksum of FLASH resulted in non-zero (SROM STATUS CODE: 0xF000000A)

CY_FLASH_DRV_NO_ERASE_SUSPEND 

Returned when EraseResume is called when no sector is suspended from erase (SROM STATUS CODE: 0xF0000092)

CY_FLASH_DRV_FLASH_NOT_ERASED 

Returned when ProgramRow is invoked on unerased cells or blank check fails (SROM STATUS CODE: 0xF00000A4)

CY_FLASH_DRV_NO_ERASE_ONGOING 

Returned by EraseSuspend when called with no ongoing erase operation (SROM STATUS CODE: 0xF00000A5)

CY_FLASH_DRV_ACTIVE_ERASE 

Returned by ProgramRow when active erase operation is going on (SROM STATUS CODE: 0xF00000A6)

CY_FLASH_DRV_INVALID_DATA_WIDTH 

Returned by ProgramRow API if invalid program width option is provided (SROM STATUS CODE: 0xF00000A8)

CY_FLASH_DRV_FLASH_SAFTEY_ENABLED 

Returned by FLASH program/erase APIs when writes are disabled in safety register (SROM STATUS CODE: 0xF00000AA)

CY_FLASH_DRV_INVALID_SFLASH_ADDR 

Returned when WriteRow is called on invalid SFLASH rows in NORMAL state (SROM STATUS CODE: 0xF00000B2)

CY_FLASH_DRV_SFLASH_BACKUP_ERASED 

Returned by Sflash programming APIs when backup sector is in erased state (SROM STATUS CODE: 0xF00000BB)

CY_FLASH_DRV_SECTOR_SUSPEND 

Returned when Program operation is called on sector which is suspended from erase (SROM STATUS CODE: 0xF0000091)

CY_FLASH_DRV_SROM_API_TIMEOUT 

Time out happens after calling srom API driver.

◆ cy_en_bankmode_t

Flash Dual bank mode configuration.

Enumerator
CY_FLASH_SINGLE_BANK_MODE 

Single Bank Mode.

CY_FLASH_DUAL_BANK_MODE 

Dual Bank Mode.

◆ cy_en_maptype_t

Flash Dual bank mode Mapping configuration.

Enumerator
CY_FLASH_MAPPING_A 

Mapping A.

CY_FLASH_MAPPING_B 

Mapping B.

◆ cy_en_flash_programrow_datasize_t

Flash Program row data size configuration.

Enumerator
CY_FLASH_PROGRAMROW_DATA_SIZE_8BIT 

Set program row data size 8 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_16BIT 

Set program row data size 16 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_32BIT 

Set program row data size 32 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_64BIT 

Set program row data size 64 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_128BIT 

Set program row data size 128 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_256BIT 

Set program row data size 256 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_512BIT 

Set program row data size 512 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_1024BIT 

Set program row data size 1024 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_2048BIT 

Set program row data size 2048 bit.

CY_FLASH_PROGRAMROW_DATA_SIZE_4096BIT 

Set program row data size 4096 bit.

◆ cy_en_flash_programrow_blocking_t

Flash Program row function execution type configuration.

Enumerator
CY_FLASH_PROGRAMROW_NON_BLOCKING 

Set program row API in non blocking mode.

CY_FLASH_PROGRAMROW_BLOCKING 

Set program row API in blocking mode.

◆ cy_en_flash_programrow_skipblankcheck_t

Flash blank check on Program row configuration.

Enumerator
CY_FLASH_PROGRAMROW_BLANK_CHECK 

Performs blank check on Program Row.

CY_FLASH_PROGRAMROW_SKIP_BLANK_CHECK 

Does not perform blank check on Program Row.

◆ cy_en_flash_programrow_location_t

Flash Program row data location configuration.

Enumerator
CY_FLASH_PROGRAMROW_DATA_LOCATION_SRAM 

Program Row data location is sram.

◆ cy_en_flash_programrow_intrmask_t

Flash Program row interrupt mask configuration.

Enumerator
CY_FLASH_PROGRAMROW_NOT_SET_INTR_MASK 

Program Row API interrupt is not set.

CY_FLASH_PROGRAMROW_SET_INTR_MASK 

Program Row API interrupt is set.

◆ cy_en_flash_erasesector_blocking_t

Flash Erase sector function execution type configuration.

Enumerator
CY_FLASH_ERASESECTOR_NON_BLOCKING 

Erase sector API executed in non blocking mode.

CY_FLASH_ERASESECTOR_BLOCKING 

Erase sector API executed in blocking mode.

◆ cy_en_flash_erasesector_intrmask_t

Flash Erase sector interrupt mask configuration.

Enumerator
CY_FLASH_ERASESECTOR_NOT_SET_INTR_MASK 

Erase sector API interrupt is not set.

CY_FLASH_ERASESECTOR_SET_INTR_MASK 

Erase sector API interrupt is set.

◆ cy_en_flash_checksum_bank_t

Flash checksum bank configuration.

Enumerator
CY_FLASH_CHECKSUM_BANK0 

Checksum calculated for Bank0.

CY_FLASH_CHECKSUM_BANK1 

Checksum calculated for Bank1.

◆ cy_en_flash_checksum_scope_t

Flash checksum page configuration.

Enumerator
CY_FLASH_CHECKSUM_PAGE 

Checksum calculated for that page.

CY_FLASH_CHECKSUM_WHOLE 

Checksum calculated for whole region.

◆ cy_en_flash_checksum_region_t

Flash checksum region configuration.

Enumerator
CY_FLASH_CHECKSUM_MAIN 

Checksum calculated for Main flash region.

CY_FLASH_CHECKSUM_WORK 

Checksum calculated for Work flash region.

CY_FLASH_CHECKSUM_SUPERVISORY 

Checksum calculated for Supervisory flash region.

◆ cy_en_flash_computehash_type_t

Flash compute hash configuration.

Enumerator
CY_FLASH_COMPUTEHASH_BASIC 

Compute Basic hash.

CY_FLASH_COMPUTEHASH_CRC8 

Compute CRC8 hash.

◆ cy_en_flash_eraseresume_setintr_t

Flash Erase resume interrupt mask configuration.

Enumerator
CY_FLASH_ERASERESUME_NOT_SET_INTR_MASK 

Erase resume API interrupt is not set.

CY_FLASH_ERASERESUME_SET_INTR_MASK 

Erase resume API interrupt is set.

◆ cy_en_flash_eraseresume_blocking_t

Flash Erase resume function execution type configuration.

Enumerator
CY_FLASH_ERASERESUME_NON_BLOCKING 

Set erase resume API in non blocking mode.

CY_FLASH_ERASERESUME_BLOCKING 

Set erase resume API in blocking mode.

◆ cy_en_flash_driver_blocking_t

Flash driver function execution type configuration.

Enumerator
CY_FLASH_DRIVER_NON_BLOCKING 

Set SROM API in non blocking mode.

CY_FLASH_DRIVER_BLOCKING 

Set SROM API in blocking mode.