Bluetooth: Mesh: Break up mesh settings

The mesh settings.c module is a giant piece of code responsible for
storing the mesh stack configuration. Such approach makes it difficult
to control the data to be stored, breaks the stack modules'
encapsulation by forcing them to reveal the internal kitchen, which
leads to unpleasant issues such as #19799.

This commit moves the responsibility of storing the configuration
to corresponding modules while keeping control of the moment of storing
the configuration and of starting the stack after the settingss loading
is completed.

This doesn't introduce any abstraction between the mesh settings.c and
other modules as it will add more complexity and overhead than necessary
for the actual task.

Fixes #19850

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
This commit is contained in:
Pavel Vasilyev 2021-01-06 09:56:56 +01:00 committed by Johan Hedberg
commit 561a8e4f0e
26 changed files with 2375 additions and 2352 deletions

View file

@ -5,5 +5,6 @@
*/
void bt_mesh_cfg_init(void);
void bt_mesh_cfg_pending_store(void);
bool bt_mesh_fixed_group_match(uint16_t addr);