aboutsummaryrefslogtreecommitdiff
path: root/tmk_core/common/backlight.c
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/common/backlight.c')
-rw-r--r--tmk_core/common/backlight.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/tmk_core/common/backlight.c b/tmk_core/common/backlight.c
index d03bfe931..4d2491b98 100644
--- a/tmk_core/common/backlight.c
+++ b/tmk_core/common/backlight.c
@@ -61,6 +61,8 @@ void backlight_decrease(void)
61void backlight_toggle(void) 61void backlight_toggle(void)
62{ 62{
63 backlight_config.enable ^= 1; 63 backlight_config.enable ^= 1;
64 if (backlight_config.raw == 1) // enabled but level = 0
65 backlight_config.level = 1;
64 eeconfig_update_backlight(backlight_config.raw); 66 eeconfig_update_backlight(backlight_config.raw);
65 dprintf("backlight toggle: %u\n", backlight_config.enable); 67 dprintf("backlight toggle: %u\n", backlight_config.enable);
66 backlight_set(backlight_config.enable ? backlight_config.level : 0); 68 backlight_set(backlight_config.enable ? backlight_config.level : 0);
@@ -81,7 +83,9 @@ void backlight_step(void)
81 83
82void backlight_level(uint8_t level) 84void backlight_level(uint8_t level)
83{ 85{
84 backlight_config.level ^= level; 86 if (level > BACKLIGHT_LEVELS)
87 level = BACKLIGHT_LEVELS;
88 backlight_config.level = level;
85 backlight_config.enable = !!backlight_config.level; 89 backlight_config.enable = !!backlight_config.level;
86 eeconfig_update_backlight(backlight_config.raw); 90 eeconfig_update_backlight(backlight_config.raw);
87 backlight_set(backlight_config.level); 91 backlight_set(backlight_config.level);