Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

#
# Copyright (c) 2018 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

menuconfig SETTINGS
	bool
	default n
	prompt "Enable settings subsystem with non-volatile storage"
	# Only NFFS is currently supported as FS.
	# The reason in that FatFs doesn't implement the fs_rename() API
	depends on (FILE_SYSTEM && FILE_SYSTEM_NFFS) || (FCB && FLASH_PAGE_LAYOUT)
	select BASE64
	help
	  The settings subsystem allows its users to serialize and
	  deserialize state in memory into and from non-volatile memory.
	  It supports several back-ends to store and load serialized data from
	  and it can do so atomically for all involved modules.

choice
	prompt "Storage back-end"
	default SETTINGS_FCB if FCB
	depends on SETTINGS
	help
	  Storage back-end to be used by the settings subsystem.

config SETTINGS_FCB
	bool "FCB"
	depends on FCB
	help
	  Use FCB as a settings storage back-end.

config SETTINGS_FS
	bool "File System"
	depends on FILE_SYSTEM
	help
	  Use a file system as a settings storage back-end.
endchoice

config SETTINGS_FCB_NUM_AREAS
	int
	default 8
	depends on SETTINGS && SETTINGS_FCB
	prompt "Number of flash areas used by the settings subsystem"
	help
	  Number of areas to allocate in the settings FCB. A smaller number is
	  used if the flash hardware cannot support this value.

config SETTINGS_FCB_MAGIC
	hex
	prompt "FCB magic for the settings subsystem"
	default 0xc0ffeeee
	depends on SETTINGS && SETTINGS_FCB
	help
	  Magic 32-bit word for to identify valid settings area

config SETTINGS_FCB_FLASH_AREA
	int
	prompt "Flash area id used for settings"
	default 4
	depends on SETTINGS && SETTINGS_FCB
	help
	  Id of the Flash area where FCB instance used for settings is
	  expected to operate.

config SETTINGS_FS_DIR
	string
	prompt "Serialization directory"
	default "/settings"
	depends on SETTINGS && SETTINGS_FS
	help
	  Directory where the settings data is stored

config SETTINGS_FS_FILE
	string
	prompt "Default settings file"
	default "/settings/run"
	depends on SETTINGS && SETTINGS_FS
	help
	  Full path to the default settings file.

config SETTINGS_FS_MAX_LINES
	int
	prompt "Compression threshold"
	default 32
	depends on SETTINGS && SETTINGS_FS
	help
	  'Limit how many items stored in a file before compressing'