]> www.infradead.org Git - users/jedix/linux-maple.git/commit
leds: leds-lp5569: Add support for Texas Instruments LP5569
authorChristian Marangi <ansuelsmth@gmail.com>
Wed, 26 Jun 2024 16:00:25 +0000 (18:00 +0200)
committerLee Jones <lee@kernel.org>
Wed, 26 Jun 2024 16:08:31 +0000 (17:08 +0100)
commit30c6743cc89cdb357d1f8a98978da0f7c138130b
tree0abf4fb45e2bd91b7f149edb05f0f04b3a19b696
parent49d943a426d1e2c034ff2f132f65590dbdc01fbd
leds: leds-lp5569: Add support for Texas Instruments LP5569

Add support for Texas Instruments LP5569 LED driver.

Texas Instruments LP5569 is 9 channels chip with programmable engines.

It almost a copy of LP5523 with fundamental changes to regs order and
regs content.

Has difference in how the clock is handled and doesn't support detecting
clock time automatically, different handling for selftest and different
scheme for the status regs.

LED chip supports ENGINE and MUX to group LED and run precompiled code
with magic values to run patterns. This is loaded via the sysfs entry
and it's passed as a string of ASCII HEX char.

One some devices using this LED Controller (a NBG7815 Router) it was
found loading big precompiled pattern with up to 96 bytes of code. To
have support for this "extended" scenario, hardcode each engine to
support 4 pages of precompiled pattern (128 bytes of code) and 1 page
for each MUX. This gives plenty of space for any kind precompiled
pattern keeping simple logic for page handling of each engine and mux.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Link: https://lore.kernel.org/r/20240626160027.19703-21-ansuelsmth@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/leds/Kconfig
drivers/leds/Makefile
drivers/leds/leds-lp5569.c [new file with mode: 0644]