diff options
| author | Joel Challis <git@zvecr.com> | 2023-12-16 21:15:55 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-12-16 21:15:55 +0000 |
| commit | 11be3e7c649185f9339158c47f161d48d32f0908 (patch) | |
| tree | 7291545f17cba2fbf9edff23e87b0441d110717c /quantum/backlight | |
| parent | f165eb5cc96b4b987020ad4cba73a0643525be4f (diff) | |
Remove redundant backlight eeconfig init (#22675)
Diffstat (limited to 'quantum/backlight')
| -rw-r--r-- | quantum/backlight/backlight.c | 21 | ||||
| -rw-r--r-- | quantum/backlight/backlight.h | 2 |
2 files changed, 15 insertions, 8 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; | |||
| 42 | static uint8_t breathing_period = BREATHING_PERIOD; | 42 | static uint8_t breathing_period = BREATHING_PERIOD; |
| 43 | #endif | 43 | #endif |
| 44 | 44 | ||
| 45 | static void backlight_check_config(void) { | ||
| 46 | /* Add some out of bound checks for backlight config */ | ||
| 47 | |||
| 48 | if (backlight_config.level > BACKLIGHT_LEVELS) { | ||
| 49 | backlight_config.level = BACKLIGHT_LEVELS; | ||
| 50 | } | ||
| 51 | } | ||
| 52 | |||
| 45 | /** \brief Backlight initialization | 53 | /** \brief Backlight initialization |
| 46 | * | 54 | * |
| 47 | * FIXME: needs doc | 55 | * FIXME: needs doc |
| 48 | */ | 56 | */ |
| 49 | void backlight_init(void) { | 57 | void backlight_init(void) { |
| 50 | /* check signature */ | ||
| 51 | if (!eeconfig_is_enabled()) { | ||
| 52 | eeconfig_init(); | ||
| 53 | eeconfig_update_backlight_default(); | ||
| 54 | } | ||
| 55 | backlight_config.raw = eeconfig_read_backlight(); | 58 | backlight_config.raw = eeconfig_read_backlight(); |
| 56 | if (backlight_config.level > BACKLIGHT_LEVELS) { | 59 | if (!backlight_config.valid) { |
| 57 | backlight_config.level = BACKLIGHT_LEVELS; | 60 | dprintf("backlight_init backlight_config.valid = 0. Write default values to EEPROM.\n"); |
| 61 | eeconfig_update_backlight_default(); | ||
| 58 | } | 62 | } |
| 63 | backlight_check_config(); | ||
| 64 | |||
| 59 | backlight_set(backlight_config.enable ? backlight_config.level : 0); | 65 | backlight_set(backlight_config.enable ? backlight_config.level : 0); |
| 60 | } | 66 | } |
| 61 | 67 | ||
| @@ -183,6 +189,7 @@ void eeconfig_update_backlight_current(void) { | |||
| 183 | } | 189 | } |
| 184 | 190 | ||
| 185 | void eeconfig_update_backlight_default(void) { | 191 | void eeconfig_update_backlight_default(void) { |
| 192 | backlight_config.valid = true; | ||
| 186 | backlight_config.enable = BACKLIGHT_DEFAULT_ON; | 193 | backlight_config.enable = BACKLIGHT_DEFAULT_ON; |
| 187 | backlight_config.breathing = BACKLIGHT_DEFAULT_BREATHING; | 194 | backlight_config.breathing = BACKLIGHT_DEFAULT_BREATHING; |
| 188 | backlight_config.level = BACKLIGHT_DEFAULT_LEVEL; | 195 | backlight_config.level = BACKLIGHT_DEFAULT_LEVEL; |
diff --git a/quantum/backlight/backlight.h b/quantum/backlight/backlight.h index 85812bff3a..c34fb5858d 100644 --- a/quantum/backlight/backlight.h +++ b/quantum/backlight/backlight.h | |||
| @@ -39,7 +39,7 @@ typedef union { | |||
| 39 | struct { | 39 | struct { |
| 40 | bool enable : 1; | 40 | bool enable : 1; |
| 41 | bool breathing : 1; | 41 | bool breathing : 1; |
| 42 | uint8_t reserved : 1; // Reserved for possible future backlight modes | 42 | bool valid : 1; |
| 43 | uint8_t level : 5; | 43 | uint8_t level : 5; |
| 44 | }; | 44 | }; |
| 45 | } backlight_config_t; | 45 | } backlight_config_t; |
