blob: e42d7e7ebf93f85235aecf59849636b0a113aa7d [file] [log] [blame]
# Copyright (c) 2023, Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
menuconfig RETENTION
bool "Retention support"
imply CRC
depends on RETAINED_MEM
depends on DT_HAS_ZEPHYR_RETENTION_ENABLED
help
Enables support for the retention system, which uses retained memory
drivers.
if RETENTION
config RETENTION_INIT_PRIORITY
int "Retention devices init priority"
default 86
help
Retention device initialization priority (must be higher than init
priorities for retained memory drivers).
config RETENTION_MUTEXES
bool
default y
depends on MULTITHREADING
depends on !RETENTION_MUTEX_FORCE_DISABLE
config RETENTION_MUTEX_FORCE_DISABLE
bool "Disable retention mutex support"
depends on MULTITHREADING
help
Disable use of mutexes which prevent issues with concurrent retention
device access. This option should only be enabled when retention
access is required in an ISR or for special use cases.
config RETENTION_BUFFER_SIZE
int "Retention stack buffer sizes"
default 16
range 1 4096
help
Size of buffers (stack based) used when reading and writing data
from/to the retention device.
menu "Retention modules"
config RETENTION_BOOT_MODE
bool "Boot mode"
help
Adds a boot mode system that allows for changing execution flow
depending upon the value of a boot mode parameter. Can be used for
e.g. button-less bootloader serial recovery mode entering from the
application.
In order to use this, a retention area with at least 1 usable user
byte must be created and set as the "zephyr,boot-mode" chosen node
via device tree.
source "subsys/retention/Kconfig.blinfo"
endmenu
module = RETENTION
module-str = retention
source "subsys/logging/Kconfig.template.log_config"
endif # RETENTION