Rework RGBLight driver system (#22529)
This commit is contained in:
		
							parent
							
								
									2acb426b8e
								
							
						
					
					
						commit
						17f36a21bf
					
				
					 35 changed files with 125 additions and 87 deletions
				
			
		| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
#include "quantum.h"
 | 
			
		||||
#include "i2c_master.h"
 | 
			
		||||
#include "drivers/led/issi/is31fl3731.h"
 | 
			
		||||
#include "ws2812.h"
 | 
			
		||||
 | 
			
		||||
enum {
 | 
			
		||||
    SELF_TESTING,
 | 
			
		||||
| 
						 | 
				
			
			@ -336,7 +337,7 @@ void housekeeping_task_kb(void)
 | 
			
		|||
    housekeeping_task_user();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
 | 
			
		||||
void setleds_custom(rgb_led_t *start_led, uint16_t num_leds)
 | 
			
		||||
{
 | 
			
		||||
    if (rgb_state.state != NORMAL) return;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -353,6 +354,10 @@ void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
 | 
			
		|||
    ws2812_setleds(leds, 4);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const rgblight_driver_t rgblight_driver = {
 | 
			
		||||
    .setleds = setleds_custom,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
bool led_update_kb(led_t led_state)
 | 
			
		||||
{
 | 
			
		||||
    bool res = led_update_user(led_state);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
        "saturation_steps": 8,
 | 
			
		||||
        "brightness_steps": 8,
 | 
			
		||||
        "led_count": 68,
 | 
			
		||||
        "driver": "custom",
 | 
			
		||||
        "animations": {
 | 
			
		||||
            "breathing": true,
 | 
			
		||||
            "rainbow_mood": true,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,4 +12,5 @@ RGBLIGHT_ENABLE = yes		# Enable keyboard RGB underglow
 | 
			
		|||
NO_USB_STARTUP_CHECK = yes
 | 
			
		||||
 | 
			
		||||
QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c
 | 
			
		||||
WS2812_DRIVER_REQUIRED = yes
 | 
			
		||||
I2C_DRIVER_REQUIRED = yes
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue