diff --git a/common/params.cc b/common/params.cc index f6b7a118b..203a275f1 100644 --- a/common/params.cc +++ b/common/params.cc @@ -216,6 +216,7 @@ std::unordered_map keys = { {"dp_long_personality_btn", PERSISTENT}, {"dp_nav_full_screen", PERSISTENT}, {"dp_alka", PERSISTENT}, + {"dp_device_reset_conf", CLEAR_ON_MANAGER_START}, }; } // namespace diff --git a/system/manager/manager.py b/system/manager/manager.py index 9898dbfd9..3026f4f0d 100755 --- a/system/manager/manager.py +++ b/system/manager/manager.py @@ -174,8 +174,10 @@ def manager_thread() -> None: # Exit main loop when uninstall/shutdown/reboot is needed shutdown = False - for param in ("DoUninstall", "DoShutdown", "DoReboot"): + for param in ("DoUninstall", "DoShutdown", "DoReboot", "dp_device_reset_conf"): if params.get_bool(param): + if param == "dp_device_reset_conf": + os.system("rm -fr /data/params/d/dp_*") shutdown = True params.put("LastManagerExitReason", f"{param} {datetime.datetime.now()}") cloudlog.warning(f"Shutting down manager - {param} set")