![]() |
MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
Files | |
file | fsl_iap_ffr.h |
Macros | |
#define | ALIGN_DOWN(x, a) ((x) & (uint32_t)(-((int32_t)(a)))) |
Alignment(down) utility. More... | |
#define | ALIGN_UP(x, a) (-((int32_t)((uint32_t)(-((int32_t)(x))) & (uint32_t)(-((int32_t)(a)))))) |
Alignment(up) utility. More... | |
Enumerations | |
enum | _flash_ffr_page_offset { kFfrPageOffset_CFPA = 0, kFfrPageOffset_CFPA_Scratch = 0, kFfrPageOffset_CFPA_Cfg = 1, kFfrPageOffset_CFPA_CfgPong = 2, kFfrPageOffset_CMPA = 3, kFfrPageOffset_CMPA_Cfg = 3, kFfrPageOffset_CMPA_Key = 4, kFfrPageOffset_NMPA = 7, kFfrPageOffset_NMPA_Romcp = 7, kFfrPageOffset_NMPA_Repair = 9, kFfrPageOffset_NMPA_Cfg = 15, kFfrPageOffset_NMPA_End = 16 } |
enum | _flash_ffr_page_num { kFfrPageNum_CFPA = 3, kFfrPageNum_CMPA = 4, kFfrPageNum_NMPA = 10 } |
Flash IFR version | |
#define | FSL_FLASH_IFR_DRIVER_VERSION (MAKE_VERSION(2, 1, 3)) |
Flash IFR driver version for SDK. More... | |
FFR APIs | |
status_t | FFR_Init (flash_config_t *config) |
Initializes the global FFR properties structure members. More... | |
status_t | FFR_Deinit (flash_config_t *config) |
Enable firewall for all flash banks. More... | |
status_t | FFR_InfieldPageWrite (flash_config_t *config, uint8_t *page_data, uint32_t valid_len) |
APIs to access CFPA pages. | |
status_t | FFR_GetCustomerInfieldData (flash_config_t *config, uint8_t *pData, uint32_t offset, uint32_t len) |
Generic read function, used by customer to read data stored in 'Customer In-field Page. More... | |
status_t | FFR_CustFactoryPageWrite (flash_config_t *config, uint8_t *page_data, bool seal_part) |
APIs to access CMPA pages. More... | |
status_t | FFR_GetCustomerData (flash_config_t *config, uint8_t *pData, uint32_t offset, uint32_t len) |
Read data stored in 'Customer Factory CFG Page'. More... | |
status_t | FFR_KeystoreWrite (flash_config_t *config, ffr_key_store_t *pKeyStore) |
status_t | FFR_KeystoreGetAC (flash_config_t *config, uint8_t *pActivationCode) |
status_t | FFR_KeystoreGetKC (flash_config_t *config, uint8_t *pKeyCode, ffr_key_type_t keyIndex) |
status_t | FFR_GetUUID (flash_config_t *config, uint8_t *uuid) |
APIs to access NMPA pages. More... | |
#define FSL_FLASH_IFR_DRIVER_VERSION (MAKE_VERSION(2, 1, 3)) |
Version 2.1.3.
#define ALIGN_DOWN | ( | x, | |
a | |||
) | ((x) & (uint32_t)(-((int32_t)(a)))) |
#define ALIGN_UP | ( | x, | |
a | |||
) | (-((int32_t)((uint32_t)(-((int32_t)(x))) & (uint32_t)(-((int32_t)(a)))))) |
enum _flash_ffr_page_num |
status_t FFR_Init | ( | flash_config_t * | config | ) |
status_t FFR_Deinit | ( | flash_config_t * | config | ) |
FFR region will be locked, After this function executed.
status_t FFR_GetCustomerInfieldData | ( | flash_config_t * | config, |
uint8_t * | pData, | ||
uint32_t | offset, | ||
uint32_t | len | ||
) |
status_t FFR_CustFactoryPageWrite | ( | flash_config_t * | config, |
uint8_t * | page_data, | ||
bool | seal_part | ||
) |
This routine will erase "customer factory page" and program the page with passed data. If 'seal_part' parameter is TRUE then the routine will compute SHA256 hash of the page contents and then programs the pages. 1.During development customer code uses this API with 'seal_part' set to FALSE. 2.During manufacturing this parameter should be set to TRUE to seal the part from further modifications
status_t FFR_GetCustomerData | ( | flash_config_t * | config, |
uint8_t * | pData, | ||
uint32_t | offset, | ||
uint32_t | len | ||
) |
status_t FFR_GetUUID | ( | flash_config_t * | config, |
uint8_t * | uuid | ||
) |
Read data stored in 'NXP Manufacuring Programmed CFG Page'.