Revise feature logic to separate runtime and config settings
commite64703308bc79597dc06e22177d2265ddad85011
authorBruce Luckcuck <github@etracer.net>
Mon, 23 Sep 2019 23:58:43 +0000 (23 19:58 -0400)
committermikeller <github@ike.ch>
Mon, 21 Oct 2019 07:25:03 +0000 (21 20:25 +1300)
treebab2f923a65255d7479d7482c6eb6cf46cfbbae2
parent692bf9c56eb70ae2a2b8940df8c25a396af48107
Revise feature logic to separate runtime and config settings
Isolates and prevents changes to runtime active features. Any changes to enabled features are deferred until after a save/reboot. Simplifies the previous logic.

Prevents potential failures when features are changed at runtime but the underlying code is not capabile of dynamic reconfiguration.
src/main/cli/cli.c
src/main/config/feature.c
src/main/config/feature.h
src/main/fc/config.c
src/main/fc/config.h
src/main/msp/msp.c
src/main/target/COLIBRI_RACE/i2c_bst.c
src/test/unit/cli_unittest.cc