Backlight - Carve out a better location for private driver functionality (#8329)
* rename backlight_soft to match rules.mk * rename backlight_soft to match rules.mk - update common_features * Carve out a better location for private driver backlight functionalitymake_cli_parsing 0.8.20
parent
d7ba0ad684
commit
3a303bd2ae
@ -0,0 +1,49 @@ |
|||||||
|
#include "quantum.h" |
||||||
|
#include "backlight.h" |
||||||
|
#include "backlight_driver_common.h" |
||||||
|
|
||||||
|
#if !defined(BACKLIGHT_PIN) && !defined(BACKLIGHT_PINS) |
||||||
|
# error "Backlight pin/pins not defined. Please configure." |
||||||
|
#endif |
||||||
|
|
||||||
|
#if defined(BACKLIGHT_PINS) |
||||||
|
static const pin_t backlight_pins[] = BACKLIGHT_PINS; |
||||||
|
# ifndef BACKLIGHT_LED_COUNT |
||||||
|
# define BACKLIGHT_LED_COUNT (sizeof(backlight_pins) / sizeof(pin_t)) |
||||||
|
# endif |
||||||
|
|
||||||
|
# define FOR_EACH_LED(x) \ |
||||||
|
for (uint8_t i = 0; i < BACKLIGHT_LED_COUNT; i++) { \
|
||||||
|
pin_t backlight_pin = backlight_pins[i]; \
|
||||||
|
{ x } \
|
||||||
|
} |
||||||
|
#else |
||||||
|
// we support only one backlight pin
|
||||||
|
static const pin_t backlight_pin = BACKLIGHT_PIN; |
||||||
|
# define FOR_EACH_LED(x) x |
||||||
|
#endif |
||||||
|
|
||||||
|
static inline void backlight_on(pin_t backlight_pin) { |
||||||
|
#if BACKLIGHT_ON_STATE == 0 |
||||||
|
writePinLow(backlight_pin); |
||||||
|
#else |
||||||
|
writePinHigh(backlight_pin); |
||||||
|
#endif |
||||||
|
} |
||||||
|
|
||||||
|
static inline void backlight_off(pin_t backlight_pin) { |
||||||
|
#if BACKLIGHT_ON_STATE == 0 |
||||||
|
writePinHigh(backlight_pin); |
||||||
|
#else |
||||||
|
writePinLow(backlight_pin); |
||||||
|
#endif |
||||||
|
} |
||||||
|
|
||||||
|
void backlight_pins_init(void) { |
||||||
|
// Setup backlight pin as output and output to off state.
|
||||||
|
FOR_EACH_LED(setPinOutput(backlight_pin); backlight_off(backlight_pin);) |
||||||
|
} |
||||||
|
|
||||||
|
void backlight_pins_on(void) { FOR_EACH_LED(backlight_on(backlight_pin);) } |
||||||
|
|
||||||
|
void backlight_pins_off(void) { FOR_EACH_LED(backlight_off(backlight_pin);) } |
@ -0,0 +1,7 @@ |
|||||||
|
#pragma once |
||||||
|
|
||||||
|
void backlight_pins_init(void); |
||||||
|
void backlight_pins_on(void); |
||||||
|
void backlight_pins_off(void); |
||||||
|
|
||||||
|
void breathing_task(void); |
@ -1,9 +1,6 @@ |
|||||||
#include "quantum.h" |
#include "quantum.h" |
||||||
#include "backlight.h" |
#include "backlight.h" |
||||||
|
#include "backlight_driver_common.h" |
||||||
#if !defined(BACKLIGHT_PIN) && !defined(BACKLIGHT_PINS) |
|
||||||
# error "Backlight pin/pins not defined. Please configure." |
|
||||||
#endif |
|
||||||
|
|
||||||
#ifdef BACKLIGHT_BREATHING |
#ifdef BACKLIGHT_BREATHING |
||||||
# error "Backlight breathing is not available for software PWM. Please disable." |
# error "Backlight breathing is not available for software PWM. Please disable." |
Loading…
Reference in new issue