aboutsummaryrefslogtreecommitdiff
path: root/quantum/backlight/backlight.c
diff options
context:
space:
mode:
authorNick Brassel <[email protected]>2024-02-28 21:47:37 +1100
committerNick Brassel <[email protected]>2024-02-28 21:47:37 +1100
commit4e369d405af6bba1adce6337b2e1b1ea1788566c (patch)
treeb0f020feff1809e37c9e7795d344929ff0bb290a /quantum/backlight/backlight.c
parent4e04da397ef643f8fcf4afbe1d19f63aee1fc561 (diff)
parentdd1706e468bb18dd7f7ae143de735a5d3be1bfb8 (diff)
downloadqmk_firmware-4e369d405af6bba1adce6337b2e1b1ea1788566c.tar.gz
qmk_firmware-4e369d405af6bba1adce6337b2e1b1ea1788566c.zip
Merge branch 'develop'0.24.0
Diffstat (limited to 'quantum/backlight/backlight.c')
-rw-r--r--quantum/backlight/backlight.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/quantum/backlight/backlight.c b/quantum/backlight/backlight.c
index e89b34696c..eb64dd71e8 100644
--- a/quantum/backlight/backlight.c
+++ b/quantum/backlight/backlight.c
@@ -42,20 +42,26 @@ backlight_config_t backlight_config;
static uint8_t breathing_period = BREATHING_PERIOD;
#endif
+static void backlight_check_config(void) {
+ /* Add some out of bound checks for backlight config */
+
+ if (backlight_config.level > BACKLIGHT_LEVELS) {
+ backlight_config.level = BACKLIGHT_LEVELS;
+ }
+}
+
/** \brief Backlight initialization
*
* FIXME: needs doc
*/
void backlight_init(void) {
- /* check signature */
- if (!eeconfig_is_enabled()) {
- eeconfig_init();
- eeconfig_update_backlight_default();
- }
backlight_config.raw = eeconfig_read_backlight();
- if (backlight_config.level > BACKLIGHT_LEVELS) {
- backlight_config.level = BACKLIGHT_LEVELS;
+ if (!backlight_config.valid) {
+ dprintf("backlight_init backlight_config.valid = 0. Write default values to EEPROM.\n");
+ eeconfig_update_backlight_default();
}
+ backlight_check_config();
+
backlight_set(backlight_config.enable ? backlight_config.level : 0);
}
@@ -183,6 +189,7 @@ void eeconfig_update_backlight_current(void) {
}
void eeconfig_update_backlight_default(void) {
+ backlight_config.valid = true;
backlight_config.enable = BACKLIGHT_DEFAULT_ON;
backlight_config.breathing = BACKLIGHT_DEFAULT_BREATHING;
backlight_config.level = BACKLIGHT_DEFAULT_LEVEL;