Added a zmk_settings_erase() function to clear all saved settings. This does not go through Zephyr's settings subsystem, but instead directly clears the data from the setting storage backend, so a reboot is needed for it to take effect.
23 lines
452 B
C
23 lines
452 B
C
/*
|
|
* Copyright (c) 2023 The ZMK Contributors
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
#include <zephyr/fs/fs.h>
|
|
|
|
#include <zmk/settings.h>
|
|
|
|
#include <zephyr/logging/log.h>
|
|
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
|
|
|
int zmk_settings_erase(void) {
|
|
LOG_INF("Erasing settings file");
|
|
|
|
int rc = fs_unlink(CONFIG_SETTINGS_FS_FILE);
|
|
if (rc) {
|
|
LOG_ERR("Failed to unlink '%s': %d", CONFIG_SETTINGS_FS_FILE, rc);
|
|
}
|
|
|
|
return rc;
|
|
}
|