Parmeter Storage API

Parameter storage library can be used to store system configuration. API uses internal flash for parameter storage.

Example Usage

#include <param.h>

/* save parameter */
param_save("param_name", &param, sizeof(param));

/* load parameter from storage */
param_load("param_name", &param, sizeof(param));

/* delete a parameter from storage */
param_reset("param_name");

/* shorthand version for save, load and delete parameter */
PARAM_SAVE(param);
PARAM_LOAD(param);
PARAM_RESET(param);

API Reference

Header File

Source: include/param.h

#include <param.h>

Functions

int param_save(const char *name, void *parm, int size)

Save parameter to memory

Parameters:
  • name – [in] Name of parameter must be unique

  • parm – [in] pointer to parameter value (data to store)

  • size – [in] Size of parameter

Returns:

0 on success, negative value on error

int param_load(const char *name, void *parm, int size)

Load/Read parameter from memory

Parameters:
  • name – [in] Name of parameter to read

  • parm – [out] pointer to buffer where read value of parameter will be stored

  • size – [in] size of parameter buffer

Returns:

0 on success, negative value on error

int param_reset(const char *name)

Reset a parameter. This will remove parameter from memory

Parameters:

name – [in] Name of parameter

Returns:

0 on success, negative value on error

int param_reset_all(void)

Remove all parameters from memory.

Returns:

0 on success, negative value on error

Macros

PARAM_SAVE(x)

Shorthand macro for parameter saving

PARAM_LOAD(x)

Shorthand macro for parameter loading

PARAM_RESET(x)

Shorthand macro for remove/reset a parameter