Preserve regulator recovery through planned resets and storage failures

This commit is contained in:
mikecarper committed 2026-10-18 21:17:44 -07:00
1 parent c4a1d485ff
commit c2998ae8d9
11 files changed
+236 -16

No files matched your search

+1 -1
View File
@@ -3604,7 +3604,7 @@ void setup() {
FILESYSTEM* regulator_prefs_fs = store.getPrimaryFS();
#if defined(NRF52_PLATFORM)
if (!mesh::storage::internalPrimaryFilesystemReady(primary_fs_boot)
&& !store.isVolatilePrimaryFS()) regulator_prefs_fs = nullptr;
|| store.isVolatilePrimaryFS()) regulator_prefs_fs = nullptr;
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, regulator_prefs_fs)) {
MESH_DEBUG_PRINTLN("Regulator selection could not be applied");
+5 -1
View File
@@ -204,7 +204,11 @@ void setup() {
#else
#error "need to define filesystem"
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, fs)) {
FILESYSTEM* regulator_prefs_fs = fs;
#if defined(NRF52_PLATFORM)
if (volatile_primary_fs) regulator_prefs_fs = nullptr;
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, regulator_prefs_fs)) {
MESH_DEBUG_PRINTLN("Regulator selection could not be applied");
}
mesh::hilStartupTrace("fs_ready");
+5 -1
View File
@@ -138,7 +138,11 @@ void setup() {
#else
#error "need to define filesystem"
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, fs)) {
FILESYSTEM* regulator_prefs_fs = fs;
#if defined(NRF52_PLATFORM)
if (volatile_primary_fs) regulator_prefs_fs = nullptr;
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, regulator_prefs_fs)) {
MESH_DEBUG_PRINTLN("Regulator selection could not be applied");
}
#ifdef DISPLAY_CLASS
+5 -1
View File
@@ -163,7 +163,11 @@ void setup() {
#else
#error "need to define filesystem"
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, fs)) {
FILESYSTEM* regulator_prefs_fs = fs;
#if defined(NRF52_PLATFORM)
if (volatile_primary_fs) regulator_prefs_fs = nullptr;
#endif
if (!mesh::power::beginRegulatorSettings(board, radio_driver, regulator_prefs_fs)) {
MESH_DEBUG_PRINTLN("Regulator selection could not be applied");
}
#ifdef DISPLAY_CLASS