Allow expanding from 8 to 32 RGB Lighting Layers (#8941)
* Allow 16 lighting layers * Require #define RGBLIGHT_LAYERS_16 to enable 16 layers * Override RGBLIGHT_MAX_LAYERS to set maximum number of lighting layers * Enforce lower bound on RGBLIGHT_MAX_LAYERS Co-Authored-By: Takeshi ISHII <2170248+mtei@users.noreply.github.com> * Fix an error in the check for valid RGBLIGHT_MAX_LAYERS * Don't use bitfield / PACKED, as it causes bloat * Update documentation re: up to 32 lighting layers * Run cformat * Add note about increasing FW size in docs/config_options.md Co-authored-by: Drashna Jaelre <drashna@live.com> * Remove no-longer-valid comment * Add doc note that split sync will be slower Co-authored-by: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
This commit is contained in:
parent
fadd3cb461
commit
a8a8bf0ff3
4 changed files with 22 additions and 4 deletions
|
@ -196,7 +196,20 @@ typedef struct {
|
|||
# define RGBLIGHT_END_SEGMENT_INDEX (255)
|
||||
# define RGBLIGHT_END_SEGMENTS \
|
||||
{ RGBLIGHT_END_SEGMENT_INDEX, 0, 0, 0 }
|
||||
# define RGBLIGHT_MAX_LAYERS 8
|
||||
# ifndef RGBLIGHT_MAX_LAYERS
|
||||
# define RGBLIGHT_MAX_LAYERS 8
|
||||
# endif
|
||||
# if RGBLIGHT_MAX_LAYERS <= 0
|
||||
# error invalid RGBLIGHT_MAX_LAYERS value (must be >= 1)
|
||||
# elif RGBLIGHT_MAX_LAYERS <= 8
|
||||
typedef uint8_t rgblight_layer_mask_t;
|
||||
# elif RGBLIGHT_MAX_LAYERS <= 16
|
||||
typedef uint16_t rgblight_layer_mask_t;
|
||||
# elif RGBLIGHT_MAX_LAYERS <= 32
|
||||
typedef uint32_t rgblight_layer_mask_t;
|
||||
# else
|
||||
# error invalid RGBLIGHT_MAX_LAYERS value (must be <= 32)
|
||||
# endif
|
||||
# define RGBLIGHT_LAYER_SEGMENTS(...) \
|
||||
{ __VA_ARGS__, RGBLIGHT_END_SEGMENTS }
|
||||
# define RGBLIGHT_LAYERS_LIST(...) \
|
||||
|
@ -247,7 +260,7 @@ typedef struct _rgblight_status_t {
|
|||
uint8_t change_flags;
|
||||
# endif
|
||||
# ifdef RGBLIGHT_LAYERS
|
||||
uint8_t enabled_layer_mask;
|
||||
rgblight_layer_mask_t enabled_layer_mask;
|
||||
# endif
|
||||
} rgblight_status_t;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue