diff options
| author | Nick Brassel <nick@tzarc.org> | 2025-06-07 22:56:58 +1000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-06-07 22:56:58 +1000 |
| commit | 7808f8f56b0734ea54d367ff9e6abb4b52d1d85a (patch) | |
| tree | 9586cdaaf507e3fe7133d3d08209ae1cbd2de8ef /quantum | |
| parent | e3c8c23d91cfca71ca8c8ed5151d3f88052272e2 (diff) | |
Add `{rgb|led}_matrix_get_mode_name()`. (#25344)
Diffstat (limited to 'quantum')
| -rw-r--r-- | quantum/led_matrix/led_matrix.c | 55 | ||||
| -rw-r--r-- | quantum/led_matrix/led_matrix.h | 4 | ||||
| -rw-r--r-- | quantum/rgb_matrix/rgb_matrix.c | 56 | ||||
| -rw-r--r-- | quantum/rgb_matrix/rgb_matrix.h | 4 |
4 files changed, 117 insertions, 2 deletions
diff --git a/quantum/led_matrix/led_matrix.c b/quantum/led_matrix/led_matrix.c index 7a0e8a5ebb..9c8004cc17 100644 --- a/quantum/led_matrix/led_matrix.c +++ b/quantum/led_matrix/led_matrix.c | |||
| @@ -107,7 +107,11 @@ void eeconfig_update_led_matrix_default(void) { | |||
| 107 | void eeconfig_debug_led_matrix(void) { | 107 | void eeconfig_debug_led_matrix(void) { |
| 108 | dprintf("led_matrix_eeconfig EEPROM\n"); | 108 | dprintf("led_matrix_eeconfig EEPROM\n"); |
| 109 | dprintf("led_matrix_eeconfig.enable = %d\n", led_matrix_eeconfig.enable); | 109 | dprintf("led_matrix_eeconfig.enable = %d\n", led_matrix_eeconfig.enable); |
| 110 | #ifdef LED_MATRIX_MODE_NAME_ENABLE | ||
| 111 | dprintf("led_matrix_eeconfig.mode = %d (%s)\n", led_matrix_eeconfig.mode, led_matrix_get_mode_name(led_matrix_eeconfig.mode)); | ||
| 112 | #else | ||
| 110 | dprintf("led_matrix_eeconfig.mode = %d\n", led_matrix_eeconfig.mode); | 113 | dprintf("led_matrix_eeconfig.mode = %d\n", led_matrix_eeconfig.mode); |
| 114 | #endif // LED_MATRIX_MODE_NAME_ENABLE | ||
| 111 | dprintf("led_matrix_eeconfig.val = %d\n", led_matrix_eeconfig.val); | 115 | dprintf("led_matrix_eeconfig.val = %d\n", led_matrix_eeconfig.val); |
| 112 | dprintf("led_matrix_eeconfig.speed = %d\n", led_matrix_eeconfig.speed); | 116 | dprintf("led_matrix_eeconfig.speed = %d\n", led_matrix_eeconfig.speed); |
| 113 | dprintf("led_matrix_eeconfig.flags = %d\n", led_matrix_eeconfig.flags); | 117 | dprintf("led_matrix_eeconfig.flags = %d\n", led_matrix_eeconfig.flags); |
| @@ -525,7 +529,11 @@ void led_matrix_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) { | |||
| 525 | } | 529 | } |
| 526 | led_task_state = STARTING; | 530 | led_task_state = STARTING; |
| 527 | eeconfig_flag_led_matrix(write_to_eeprom); | 531 | eeconfig_flag_led_matrix(write_to_eeprom); |
| 528 | dprintf("led matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", led_matrix_eeconfig.mode); | 532 | #ifdef LED_MATRIX_MODE_NAME_ENABLE |
| 533 | dprintf("led matrix mode [%s]: %u (%s)\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)led_matrix_eeconfig.mode, led_matrix_get_mode_name(led_matrix_eeconfig.mode)); | ||
| 534 | #else | ||
| 535 | dprintf("led matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)led_matrix_eeconfig.mode); | ||
| 536 | #endif // LED_MATRIX_MODE_NAME_ENABLE | ||
| 529 | } | 537 | } |
| 530 | void led_matrix_mode_noeeprom(uint8_t mode) { | 538 | void led_matrix_mode_noeeprom(uint8_t mode) { |
| 531 | led_matrix_mode_eeprom_helper(mode, false); | 539 | led_matrix_mode_eeprom_helper(mode, false); |
| @@ -652,3 +660,48 @@ void led_matrix_set_flags(led_flags_t flags) { | |||
| 652 | void led_matrix_set_flags_noeeprom(led_flags_t flags) { | 660 | void led_matrix_set_flags_noeeprom(led_flags_t flags) { |
| 653 | led_matrix_set_flags_eeprom_helper(flags, false); | 661 | led_matrix_set_flags_eeprom_helper(flags, false); |
| 654 | } | 662 | } |
| 663 | |||
| 664 | // LED Matrix naming | ||
| 665 | #undef LED_MATRIX_EFFECT | ||
| 666 | #ifdef LED_MATRIX_MODE_NAME_ENABLE | ||
| 667 | const char *led_matrix_get_mode_name(uint8_t mode) { | ||
| 668 | switch (mode) { | ||
| 669 | case LED_MATRIX_NONE: | ||
| 670 | return "NONE"; | ||
| 671 | |||
| 672 | # define LED_MATRIX_EFFECT(name, ...) \ | ||
| 673 | case LED_MATRIX_##name: \ | ||
| 674 | return #name; | ||
| 675 | # include "led_matrix_effects.inc" | ||
| 676 | # undef LED_MATRIX_EFFECT | ||
| 677 | |||
| 678 | # ifdef COMMUNITY_MODULES_ENABLE | ||
| 679 | # define LED_MATRIX_EFFECT(name, ...) \ | ||
| 680 | case LED_MATRIX_COMMUNITY_MODULE_##name: \ | ||
| 681 | return #name; | ||
| 682 | # include "led_matrix_community_modules.inc" | ||
| 683 | # undef LED_MATRIX_EFFECT | ||
| 684 | # endif // COMMUNITY_MODULES_ENABLE | ||
| 685 | |||
| 686 | # if defined(LED_MATRIX_CUSTOM_KB) || defined(LED_MATRIX_CUSTOM_USER) | ||
| 687 | # define LED_MATRIX_EFFECT(name, ...) \ | ||
| 688 | case LED_MATRIX_CUSTOM_##name: \ | ||
| 689 | return #name; | ||
| 690 | |||
| 691 | # ifdef LED_MATRIX_CUSTOM_KB | ||
| 692 | # include "led_matrix_kb.inc" | ||
| 693 | # endif // LED_MATRIX_CUSTOM_KB | ||
| 694 | |||
| 695 | # ifdef LED_MATRIX_CUSTOM_USER | ||
| 696 | # include "led_matrix_user.inc" | ||
| 697 | # endif // LED_MATRIX_CUSTOM_USER | ||
| 698 | |||
| 699 | # undef LED_MATRIX_EFFECT | ||
| 700 | # endif // LED_MATRIX_CUSTOM_KB || LED_MATRIX_CUSTOM_USER | ||
| 701 | |||
| 702 | default: | ||
| 703 | return "UNKNOWN"; | ||
| 704 | } | ||
| 705 | } | ||
| 706 | # undef LED_MATRIX_EFFECT | ||
| 707 | #endif // LED_MATRIX_MODE_NAME_ENABLE | ||
diff --git a/quantum/led_matrix/led_matrix.h b/quantum/led_matrix/led_matrix.h index 0dfe33ffab..9a49515ab2 100644 --- a/quantum/led_matrix/led_matrix.h +++ b/quantum/led_matrix/led_matrix.h | |||
| @@ -184,6 +184,10 @@ led_flags_t led_matrix_get_flags(void); | |||
| 184 | void led_matrix_set_flags(led_flags_t flags); | 184 | void led_matrix_set_flags(led_flags_t flags); |
| 185 | void led_matrix_set_flags_noeeprom(led_flags_t flags); | 185 | void led_matrix_set_flags_noeeprom(led_flags_t flags); |
| 186 | 186 | ||
| 187 | #ifdef LED_MATRIX_MODE_NAME_ENABLE | ||
| 188 | const char *led_matrix_get_mode_name(uint8_t mode); | ||
| 189 | #endif // LED_MATRIX_MODE_NAME_ENABLE | ||
| 190 | |||
| 187 | static inline bool led_matrix_check_finished_leds(uint8_t led_idx) { | 191 | static inline bool led_matrix_check_finished_leds(uint8_t led_idx) { |
| 188 | #if defined(LED_MATRIX_SPLIT) | 192 | #if defined(LED_MATRIX_SPLIT) |
| 189 | if (is_keyboard_left()) { | 193 | if (is_keyboard_left()) { |
diff --git a/quantum/rgb_matrix/rgb_matrix.c b/quantum/rgb_matrix/rgb_matrix.c index 2679c48342..ab0aa17512 100644 --- a/quantum/rgb_matrix/rgb_matrix.c +++ b/quantum/rgb_matrix/rgb_matrix.c | |||
| @@ -109,7 +109,11 @@ void eeconfig_update_rgb_matrix_default(void) { | |||
| 109 | void eeconfig_debug_rgb_matrix(void) { | 109 | void eeconfig_debug_rgb_matrix(void) { |
| 110 | dprintf("rgb_matrix_config EEPROM\n"); | 110 | dprintf("rgb_matrix_config EEPROM\n"); |
| 111 | dprintf("rgb_matrix_config.enable = %d\n", rgb_matrix_config.enable); | 111 | dprintf("rgb_matrix_config.enable = %d\n", rgb_matrix_config.enable); |
| 112 | #ifdef RGB_MATRIX_MODE_NAME_ENABLE | ||
| 113 | dprintf("rgb_matrix_config.mode = %d (%s)\n", rgb_matrix_config.mode, rgb_matrix_get_mode_name(rgb_matrix_config.mode)); | ||
| 114 | #else | ||
| 112 | dprintf("rgb_matrix_config.mode = %d\n", rgb_matrix_config.mode); | 115 | dprintf("rgb_matrix_config.mode = %d\n", rgb_matrix_config.mode); |
| 116 | #endif // RGB_MATRIX_MODE_NAME_ENABLE | ||
| 113 | dprintf("rgb_matrix_config.hsv.h = %d\n", rgb_matrix_config.hsv.h); | 117 | dprintf("rgb_matrix_config.hsv.h = %d\n", rgb_matrix_config.hsv.h); |
| 114 | dprintf("rgb_matrix_config.hsv.s = %d\n", rgb_matrix_config.hsv.s); | 118 | dprintf("rgb_matrix_config.hsv.s = %d\n", rgb_matrix_config.hsv.s); |
| 115 | dprintf("rgb_matrix_config.hsv.v = %d\n", rgb_matrix_config.hsv.v); | 119 | dprintf("rgb_matrix_config.hsv.v = %d\n", rgb_matrix_config.hsv.v); |
| @@ -560,7 +564,11 @@ void rgb_matrix_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) { | |||
| 560 | } | 564 | } |
| 561 | rgb_task_state = STARTING; | 565 | rgb_task_state = STARTING; |
| 562 | eeconfig_flag_rgb_matrix(write_to_eeprom); | 566 | eeconfig_flag_rgb_matrix(write_to_eeprom); |
| 563 | dprintf("rgb matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", rgb_matrix_config.mode); | 567 | #ifdef RGB_MATRIX_MODE_NAME_ENABLE |
| 568 | dprintf("rgb matrix mode [%s]: %u (%s)\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)rgb_matrix_config.mode, rgb_matrix_get_mode_name(rgb_matrix_config.mode)); | ||
| 569 | #else | ||
| 570 | dprintf("rgb matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)rgb_matrix_config.mode); | ||
| 571 | #endif // RGB_MATRIX_MODE_NAME_ENABLE | ||
| 564 | } | 572 | } |
| 565 | void rgb_matrix_mode_noeeprom(uint8_t mode) { | 573 | void rgb_matrix_mode_noeeprom(uint8_t mode) { |
| 566 | rgb_matrix_mode_eeprom_helper(mode, false); | 574 | rgb_matrix_mode_eeprom_helper(mode, false); |
| @@ -738,3 +746,49 @@ void rgb_matrix_set_flags(led_flags_t flags) { | |||
| 738 | void rgb_matrix_set_flags_noeeprom(led_flags_t flags) { | 746 | void rgb_matrix_set_flags_noeeprom(led_flags_t flags) { |
| 739 | rgb_matrix_set_flags_eeprom_helper(flags, false); | 747 | rgb_matrix_set_flags_eeprom_helper(flags, false); |
| 740 | } | 748 | } |
| 749 | |||
| 750 | //---------------------------------------------------------- | ||
| 751 | // RGB Matrix naming | ||
| 752 | #undef RGB_MATRIX_EFFECT | ||
| 753 | #ifdef RGB_MATRIX_MODE_NAME_ENABLE | ||
| 754 | const char *rgb_matrix_get_mode_name(uint8_t mode) { | ||
| 755 | switch (mode) { | ||
| 756 | case RGB_MATRIX_NONE: | ||
| 757 | return "NONE"; | ||
| 758 | |||
| 759 | # define RGB_MATRIX_EFFECT(name, ...) \ | ||
| 760 | case RGB_MATRIX_##name: \ | ||
| 761 | return #name; | ||
| 762 | # include "rgb_matrix_effects.inc" | ||
| 763 | # undef RGB_MATRIX_EFFECT | ||
| 764 | |||
| 765 | # ifdef COMMUNITY_MODULES_ENABLE | ||
| 766 | # define RGB_MATRIX_EFFECT(name, ...) \ | ||
| 767 | case RGB_MATRIX_COMMUNITY_MODULE_##name: \ | ||
| 768 | return #name; | ||
| 769 | # include "rgb_matrix_community_modules.inc" | ||
| 770 | # undef RGB_MATRIX_EFFECT | ||
| 771 | # endif // COMMUNITY_MODULES_ENABLE | ||
| 772 | |||
| 773 | # if defined(RGB_MATRIX_CUSTOM_KB) || defined(RGB_MATRIX_CUSTOM_USER) | ||
| 774 | # define RGB_MATRIX_EFFECT(name, ...) \ | ||
| 775 | case RGB_MATRIX_CUSTOM_##name: \ | ||
| 776 | return #name; | ||
| 777 | |||
| 778 | # ifdef RGB_MATRIX_CUSTOM_KB | ||
| 779 | # include "rgb_matrix_kb.inc" | ||
| 780 | # endif // RGB_MATRIX_CUSTOM_KB | ||
| 781 | |||
| 782 | # ifdef RGB_MATRIX_CUSTOM_USER | ||
| 783 | # include "rgb_matrix_user.inc" | ||
| 784 | # endif // RGB_MATRIX_CUSTOM_USER | ||
| 785 | |||
| 786 | # undef RGB_MATRIX_EFFECT | ||
| 787 | # endif // RGB_MATRIX_CUSTOM_KB || RGB_MATRIX_CUSTOM_USER | ||
| 788 | |||
| 789 | default: | ||
| 790 | return "UNKNOWN"; | ||
| 791 | } | ||
| 792 | } | ||
| 793 | # undef RGB_MATRIX_EFFECT | ||
| 794 | #endif // RGB_MATRIX_MODE_NAME_ENABLE | ||
diff --git a/quantum/rgb_matrix/rgb_matrix.h b/quantum/rgb_matrix/rgb_matrix.h index c6b302631e..a91dded4a8 100644 --- a/quantum/rgb_matrix/rgb_matrix.h +++ b/quantum/rgb_matrix/rgb_matrix.h | |||
| @@ -220,6 +220,10 @@ void rgb_matrix_set_flags(led_flags_t flags); | |||
| 220 | void rgb_matrix_set_flags_noeeprom(led_flags_t flags); | 220 | void rgb_matrix_set_flags_noeeprom(led_flags_t flags); |
| 221 | void rgb_matrix_update_pwm_buffers(void); | 221 | void rgb_matrix_update_pwm_buffers(void); |
| 222 | 222 | ||
| 223 | #ifdef RGB_MATRIX_MODE_NAME_ENABLE | ||
| 224 | const char *rgb_matrix_get_mode_name(uint8_t mode); | ||
| 225 | #endif // RGB_MATRIX_MODE_NAME_ENABLE | ||
| 226 | |||
| 223 | #ifndef RGBLIGHT_ENABLE | 227 | #ifndef RGBLIGHT_ENABLE |
| 224 | # define eeconfig_update_rgblight_current eeconfig_force_flush_rgb_matrix | 228 | # define eeconfig_update_rgblight_current eeconfig_force_flush_rgb_matrix |
| 225 | # define rgblight_reload_from_eeprom rgb_matrix_reload_from_eeprom | 229 | # define rgblight_reload_from_eeprom rgb_matrix_reload_from_eeprom |
