Microchip® Advanced Software Framework

nvm_config Struct Reference

NVM controller configuration structure.

Configuration structure for the NVM controller within the device.

#include <nvm.h>

Data Fields

enum nvm_cache_readmode cache_readmode
 Select the mode for how the cache will pre-fetch data from the flash. More...
 
bool disable_cache
 Setting this to true will disable the pre-fetch cache in front of the NVM controller. More...
 
bool manual_page_write
 Manual write mode; if enabled, pages loaded into the NVM buffer will not be written until a separate write command is issued. More...
 
enum nvm_sleep_power_mode sleep_power_mode
 Power reduction mode during device sleep. More...
 
uint8_t wait_states
 Number of wait states to insert when reading from flash, to prevent invalid data from being read at high clock frequencies. More...
 

enum nvm_cache_readmode nvm_config::cache_readmode

Select the mode for how the cache will pre-fetch data from the flash.

Referenced by nvm_get_config_defaults(), and nvm_set_config().

bool nvm_config::disable_cache

Setting this to true will disable the pre-fetch cache in front of the NVM controller.

Referenced by nvm_get_config_defaults(), and nvm_set_config().

bool nvm_config::manual_page_write

Manual write mode; if enabled, pages loaded into the NVM buffer will not be written until a separate write command is issued.

If disabled, writing to the last byte in the NVM page buffer will trigger an automatic write.

Note
If a partial page is to be written, a manual write command must be executed in either mode.

Referenced by bootloader_system_init(), configure_nvm(), eeprom_emulator_init(), main(), nvm_get_config_defaults(), nvm_set_config(), pds_nvm_init(), run_nvm_init_test(), and rww_eeprom_emulator_init().

enum nvm_sleep_power_mode nvm_config::sleep_power_mode

Power reduction mode during device sleep.

Referenced by nvm_get_config_defaults(), and nvm_set_config().

uint8_t nvm_config::wait_states

Number of wait states to insert when reading from flash, to prevent invalid data from being read at high clock frequencies.

Referenced by nvm_get_config_defaults(), nvm_set_config(), pds_nvm_init(), and run_nvm_init_test().