zephyr/subsys
Pavel Vasilyev 177e9b93bf Bluetooth: Mesh: Add API to store model's user data in settings work
Mesh models may have a data that needs to be stored persistently.
Currently, the models should call bt_mesh_model_data_store and the store
will happen in the calling context. Most likely that it will be called
in BT RX thread as this is the context from which model's opcodes
handlers are called. Thus, the thread will be blocked until the store is
finished.

Another issues is that some models may have states that changes
frequently. Triggering the store on every state change may wear out
flash. Therefore, the models need to implement some postpone mechanism
to reduce the flash wear out.

The mesh stack has already implemented the mechanism of deferred store
with its own settings. The models could use it instead of implementing
their own mechanism.

In combination with the mesh settings workqueue, the models can store
their data without blocking the stack work.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-05-08 09:58:21 +02:00
..
bluetooth Bluetooth: Mesh: Add API to store model's user data in settings work 2023-05-08 09:58:21 +02:00
canbus canbus: isotp: fix single frame state machine stuck issue 2023-04-12 17:45:04 +02:00
console
debug shell: fix MISRA 5.7 violations on struct shell 2023-04-14 12:21:08 +02:00
demand_paging
dfu dfu: mcuboot_shell: Add command to enter serial recovery 2023-04-24 13:27:53 +02:00
disk subsys/disk: No need of runtime intialization for disk access part 2023-03-13 18:34:40 +00:00
dsp zdsp: add ARC DSPLIB backend for zdsp 2023-02-21 15:06:06 +01:00
emul emul: Migrate all emulation use to use DT_HAS_ 2023-04-28 08:37:33 -05:00
fb fb: cfb: Use TYPE_SECTION macros for cfb_fonts 2023-04-19 17:14:54 +02:00
fs fs: change fatFS initialization to match littleFS. 2023-04-24 13:34:12 +02:00
input input: add a longpress device 2023-03-24 13:48:28 +00:00
ipc ipc: icmsg: Add mutual exclussion access to shmem 2023-04-29 12:24:17 +02:00
jwt
logging logging: Use TYPE_SECTION macros for log dynamic 2023-05-03 10:43:31 +02:00
lorawan init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
mgmt ARC: Add HS4x support 2023-05-02 16:54:24 +02:00
modbus
net net: lwm2m: use path as block context retrieval 2023-05-03 10:01:37 +02:00
pm pm: Use TYPE_SECTION macros for pm_device_slots 2023-04-19 17:15:29 +02:00
portability
random init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
retention retention: Add optional mutex disablement 2023-04-24 13:27:53 +02:00
rtio rtio: fix bug in mempool release API 2023-05-01 09:26:06 -05:00
sd sd: Return ret if error in sdmmc_spi_read_cxd 2023-03-28 09:23:47 +02:00
settings
shell Shell: Edit shell to store/retrieve return values 2023-05-02 16:52:21 +02:00
stats
storage storage: flash_map list partition labels 2023-05-05 10:02:19 +02:00
task_wdt
testsuite ztest: mock: fix failed test printed message. 2023-04-14 12:39:52 -04:00
timing
tracing init: remove the need for a dummy device pointer in SYS_INIT functions 2023-04-12 14:28:07 +00:00
usb usb-c: Add USB-C Subsystem Source PD Support 2023-04-28 10:06:01 +02:00
zbus
CMakeLists.txt retention: Add retention system 2023-04-24 13:27:53 +02:00
Kconfig retention: Add retention system 2023-04-24 13:27:53 +02:00