Enhanced Embedded Flash Controller (EEFC) driver for SAM.
Copyright (c) 2011-2018 Microchip Technology Inc. and its subsidiaries.
#include "efc.h"
Macros | |
#define | EEFC_ERROR_FLAGS (EEFC_FSR_FLOCKE | EEFC_FSR_FCMDE | EEFC_FSR_FLERR) |
#define | EEFC_FCR_FCMD(value) ((EEFC_FCR_FCMD_Msk & ((value) << EEFC_FCR_FCMD_Pos))) |
#define | EEFC_FCR_FKEY_PASSWD EEFC_FCR_FKEY(FWP_KEY) |
#define | FWP_KEY 0x5Au |
#define | READ_BUFF_ADDR0 IFLASH0_ADDR |
#define | READ_BUFF_ADDR1 IFLASH1_ADDR |
Functions | |
void | efc_disable_cloe (Efc *p_efc) |
Disable code loop optimization. More... | |
void | efc_disable_frdy_interrupt (Efc *p_efc) |
Disable the flash ready interrupt. More... | |
void | efc_disable_write_protection (Efc *p_efc) |
Disable the write protection. More... | |
void | efc_enable_cloe (Efc *p_efc) |
Enable code loop optimization. More... | |
void | efc_enable_frdy_interrupt (Efc *p_efc) |
Enable the flash ready interrupt. More... | |
void | efc_enable_write_protection (Efc *p_efc) |
Enable the write protection. More... | |
uint32_t | efc_get_result (Efc *p_efc) |
Get the result of the last executed command. More... | |
uint32_t | efc_get_status (Efc *p_efc) |
Get the current status of the EEFC. More... | |
uint32_t | efc_get_wait_state (Efc *p_efc) |
Get flash wait state. More... | |
uint32_t | efc_init (Efc *p_efc, uint32_t ul_access_mode, uint32_t ul_fws) |
Initialize the EFC controller. More... | |
uint32_t | efc_perform_command (Efc *p_efc, uint32_t ul_command, uint32_t ul_argument) |
Perform the given command and wait until its completion (or an error). More... | |
uint32_t | efc_perform_fcr (Efc *p_efc, uint32_t ul_fcr) |
Perform command. More... | |
__no_inline RAMFUNC uint32_t | efc_perform_read_sequence (Efc *p_efc, uint32_t ul_cmd_st, uint32_t ul_cmd_sp, uint32_t *p_ul_buf, uint32_t ul_size) |
Perform read sequence. More... | |
void | efc_set_wait_state (Efc *p_efc, uint32_t ul_fws) |
Set flash wait state. More... | |
void | efc_write_fmr (Efc *p_efc, uint32_t ul_fmr) |
Set mode register. More... | |