NVM#

Functions#

void

Used by the application to execute actions after a set default configuration.

void

Used by the application to execute actions after a application reset.

void

Used by the application to execute actions after a load configuration.

void
zaf_nvm_app_load_configuration_migration(uint32_t current_version, uint32_t saved_version)

Used by the application to execute actions when the current version differs from the saved version.

void

Resets configuration to default values.

void

Resets the NVM file system.

void

Loads the default configuration common for all applications.

bool

Opens file system for ZAF.

bool

Erases application nvm.

ZAF_nvm_erase_object(zpal_nvm_object_key_t key)

Erases an object from application nvm.

ZAF_nvm_read(zpal_nvm_object_key_t key, void *object, size_t object_size)

Reads an object from application nvm.

ZAF_nvm_read_object_part(zpal_nvm_object_key_t key, void *object, size_t offset, size_t size)

Reads part of an object from application nvm.

ZAF_nvm_write(zpal_nvm_object_key_t key, const void *object, size_t object_size)

Writes an object to application nvm.

ZAF_nvm_get_object_size(zpal_nvm_object_key_t key, size_t *len)

Get the object size identified with a given key from NVM.

bool

Opens file system for application.

bool

Erases application nvm.

ZAF_nvm_app_erase_object(zpal_nvm_object_key_t key)

Erases an object from application nvm.

ZAF_nvm_app_read(zpal_nvm_object_key_t key, void *object, size_t object_size)

Reads an object from application nvm.

ZAF_nvm_app_read_object_part(zpal_nvm_object_key_t key, void *object, size_t offset, size_t size)

Reads part of an object from application nvm.

ZAF_nvm_app_write(zpal_nvm_object_key_t key, const void *object, size_t object_size)

Writes an object to application nvm.

ZAF_nvm_app_get_object_size(zpal_nvm_object_key_t key, size_t *len)

Get the object size identified with a given key from NVM.

Function Documentation#

zaf_nvm_app_set_default_configuration#

void zaf_nvm_app_set_default_configuration (void )

Used by the application to execute actions after a set default configuration.

Parameters
TypeDirectionArgument NameDescription
voidN/A

zaf_nvm_app_reset#

void zaf_nvm_app_reset (void )

Used by the application to execute actions after a application reset.

Parameters
TypeDirectionArgument NameDescription
voidN/A

zaf_nvm_app_load_configuration#

void zaf_nvm_app_load_configuration (void )

Used by the application to execute actions after a load configuration.

Parameters
TypeDirectionArgument NameDescription
voidN/A

zaf_nvm_app_load_configuration_migration#

void zaf_nvm_app_load_configuration_migration (uint32_t current_version, uint32_t saved_version)

Used by the application to execute actions when the current version differs from the saved version.

Parameters
TypeDirectionArgument NameDescription
uint32_tN/Acurrent_version

Version returned by zpal_get_app_version

uint32_tN/Asaved_version

Version stored in ZAF_FILE_ID_APP_VERSION


zafi_nvm_app_set_default_configuration#

void zafi_nvm_app_set_default_configuration (void )

Resets configuration to default values.

Parameters
TypeDirectionArgument NameDescription
voidN/A

Remarks

  • Internal function only

Add application specific functions here to initialize configuration values stored in persistent memory. Will be called at any of the following events:

  • Network Exclusion

  • Network Secure Inclusion (after S2 bootstrapping complete)

  • Device Reset Locally


zafi_nvm_app_reset#

void zafi_nvm_app_reset (void )

Resets the NVM file system.

Parameters
TypeDirectionArgument NameDescription
voidN/A

Remarks

  • Internal function only


zafi_nvm_app_load_configuration#

void zafi_nvm_app_load_configuration (void )

Loads the default configuration common for all applications.

Parameters
TypeDirectionArgument NameDescription
voidN/A

Remarks

  • If no settings are found, the application file system will be erased and default values will be written.

  • Internal function. Don't invoke from application.


ZAF_nvm_init#

bool ZAF_nvm_init (void )

Opens file system for ZAF.

Parameters
TypeDirectionArgument NameDescription
voidN/A

Returns


ZAF_nvm_erase#

bool ZAF_nvm_erase (void )

Erases application nvm.

Parameters
TypeDirectionArgument NameDescription
voidN/A

(Does nothing on 800s since it has 1 shared nvm for application and protocol.)

Returns

  • true on successful erase


ZAF_nvm_erase_object#

zpal_status_t ZAF_nvm_erase_object (zpal_nvm_object_key_t key)

Erases an object from application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

Returns

  • status of erase operation


ZAF_nvm_read#

zpal_status_t ZAF_nvm_read (zpal_nvm_object_key_t key, void * object, size_t object_size)

Reads an object from application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

void *[out]object

Address of array where object can be written to.

size_t[in]object_size

Size of the stored object.

Returns

  • status of read operation


ZAF_nvm_read_object_part#

zpal_status_t ZAF_nvm_read_object_part (zpal_nvm_object_key_t key, void * object, size_t offset, size_t size)

Reads part of an object from application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

void *[out]object

Address of array where part of object can be written to.

size_t[in]offset

The offset in object where part shall be read from.

size_t[in]size

Size of the object part.

Returns

  • status of read operation


ZAF_nvm_write#

zpal_status_t ZAF_nvm_write (zpal_nvm_object_key_t key, const void * object, size_t object_size)

Writes an object to application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

const void *[out]object

Address of array of object that is written.

size_t[in]object_size

Size of the stored object.

Returns

  • status of write operation


ZAF_nvm_get_object_size#

zpal_status_t ZAF_nvm_get_object_size (zpal_nvm_object_key_t key, size_t * len)

Get the object size identified with a given key from NVM.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

size_t *[out]len

Object size.

Returns

  • status of operation


ZAF_nvm_app_init#

bool ZAF_nvm_app_init (void )

Opens file system for application.

Parameters
TypeDirectionArgument NameDescription
voidN/A

Returns


ZAF_nvm_app_erase#

bool ZAF_nvm_app_erase (void )

Erases application nvm.

Parameters
TypeDirectionArgument NameDescription
voidN/A

(Does nothing on 800s since it has 1 shared nvm for application and protocol.)

Returns

  • true on successful erase


ZAF_nvm_app_erase_object#

zpal_status_t ZAF_nvm_app_erase_object (zpal_nvm_object_key_t key)

Erases an object from application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

Returns

  • status of erase operation


ZAF_nvm_app_read#

zpal_status_t ZAF_nvm_app_read (zpal_nvm_object_key_t key, void * object, size_t object_size)

Reads an object from application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

void *[out]object

Address of array where object can be written to.

size_t[in]object_size

Size of the stored object.

Returns

  • status of read operation


ZAF_nvm_app_read_object_part#

zpal_status_t ZAF_nvm_app_read_object_part (zpal_nvm_object_key_t key, void * object, size_t offset, size_t size)

Reads part of an object from application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

void *[out]object

Address of array where part of object can be written to.

size_t[in]offset

The offset in object where part shall be read from.

size_t[in]size

Size of the object part.

Returns

  • status of read operation


ZAF_nvm_app_write#

zpal_status_t ZAF_nvm_app_write (zpal_nvm_object_key_t key, const void * object, size_t object_size)

Writes an object to application nvm.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

const void *[out]object

Address of array of object that is written.

size_t[in]object_size

Size of the stored object.

Returns

  • status of write operation


ZAF_nvm_app_get_object_size#

zpal_status_t ZAF_nvm_app_get_object_size (zpal_nvm_object_key_t key, size_t * len)

Get the object size identified with a given key from NVM.

Parameters
TypeDirectionArgument NameDescription
zpal_nvm_object_key_t[in]key

Object key.

size_t *[out]len

Object size.

Returns

  • status of operation