| # Copyright Nordic Semiconductor ASA 2023. All rights reserved. |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| menuconfig MCUMGR_GRP_SETTINGS |
| bool "MCUmgr handlers for settings management" |
| depends on SETTINGS |
| depends on SETTINGS_RUNTIME |
| select MCUMGR_SMP_CBOR_MIN_DECODING_LEVEL_2 |
| select MCUMGR_SMP_CBOR_MIN_ENCODING_LEVEL_2 if ZCBOR_CANONICAL |
| select MCUMGR_SMP_CBOR_MIN_ENCODING_LEVEL_1 |
| help |
| Enables MCUmgr handlers for settings manipulation. |
| |
| if MCUMGR_GRP_SETTINGS |
| |
| choice MCUMGR_GRP_SETTINGS_BUFFER_TYPE |
| prompt "Buffer type" |
| default MCUMGR_GRP_SETTINGS_BUFFER_TYPE_STACK |
| help |
| Selects if the stack or heap will be used for variables that are |
| needed when processing requests. |
| |
| config MCUMGR_GRP_SETTINGS_BUFFER_TYPE_STACK |
| bool "Stack (fixed size)" |
| help |
| Use a fixed size stack buffer, any user-supplied values longer than |
| this will be rejected. |
| |
| Note that stack usage for parameter storage alone will be |
| MCUMGR_GRP_SETTINGS_NAME_LEN + MCUMGR_GRP_SETTINGS_VALUE_LEN, |
| therefore the MCUmgr stack should be appropriately sized. |
| |
| config MCUMGR_GRP_SETTINGS_BUFFER_TYPE_HEAP |
| bool "Heap (dynamic size)" |
| depends on COMMON_LIBC_MALLOC_ARENA_SIZE > 0 |
| help |
| Use dynamic heap memory allocation through malloc, if there is |
| insufficient heap memory for the allocation then the request will be |
| rejected. |
| |
| endchoice |
| |
| config MCUMGR_GRP_SETTINGS_NAME_LEN |
| int "Maximum setting name length" |
| default 32 |
| help |
| Maximum length of a key to lookup, this will be the size of the |
| variable if placed on the stack or the maximum allocated size of the |
| variable if placed on the heap. |
| |
| config MCUMGR_GRP_SETTINGS_VALUE_LEN |
| int "Maximum setting value length" |
| default 32 |
| help |
| Maximum length of a value to read, this will be the size of the |
| variable if placed on the stack or the allocated size of the |
| variable if placed on the heap (settings does not support getting |
| the size of a value prior to looking it up). |
| |
| config MCUMGR_GRP_SETTINGS_ACCESS_HOOK |
| bool "Settings access hook" |
| depends on MCUMGR_MGMT_NOTIFICATION_HOOKS |
| help |
| Allows applications to control settings management access by |
| registering for a callback which is then triggered whenever a |
| settings read or write attempt is made. |
| |
| endif |