generic: add STMicroelectronics LED1202 driver
authorManuel Fombuena <fombuena@outlook.com>
Wed, 1 Jan 2025 20:42:37 +0000 (20:42 +0000)
committerRobert Marko <robimarko@gmail.com>
Sun, 5 Jan 2025 11:12:12 +0000 (12:12 +0100)
commit8925c469f4ec919b3df5d8afdbc608cfdb7a8b33
tree8f6353d907faf4308946de278d38a3cb726866a2
parent70610a5240a94648e178713f091435bd0ba158d3
generic: add STMicroelectronics LED1202 driver

This LED controller has a driver under development which is currently being reviewed by the respective kernel maintainers. They are currently on v11 which is included here.

The LED1202 is a 12-channel low quiescent current LED driver with:
  * Supply range from 2.6 V to 5 V
  * 20 mA current capability per channel
  * 1.8 V compatible I2C control interface
  * 8-bit analog dimming individual control
  * 12-bit local PWM resolution
  * 8 programmable patterns

If the led node is present in the controller then the channel is
set to active.

The output current can be adjusted separately for each channel by 8-bit
analog (current sink input) and 12-bit digital (PWM) dimming control. The
LED1202 implements 12 low-side current generators with independent dimming
control.

Internal volatile memory allows the user to store up to 8 different patterns,
each pattern is a particular output configuration in terms of PWM
duty-cycle (on 4096 steps). Analog dimming (on 256 steps) is per channel but
common to all patterns. Each device tree LED node will have a corresponding
entry in /sys/class/leds with the label name. The brightness property
corresponds to the per channel analog dimming, while the patterns[1-8] to the
PWM dimming control.

Signed-off-by: Manuel Fombuena <fombuena@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17451
Signed-off-by: Robert Marko <robimarko@gmail.com>
package/kernel/linux/modules/leds.mk
target/linux/ath79/patches-6.6/800-leds-add-reset-controller-based-driver.patch
target/linux/bmips/patches-6.6/700-leds-add-support-for-Sercomm-MSP430-LED-controller.patch
target/linux/generic/pending-6.6/891-dt-bindings-leds-Add-LED1202-LED-Controller.patch [new file with mode: 0644]
target/linux/generic/pending-6.6/892-leds-Add-LED1202-I2C-driver.patch [new file with mode: 0644]
target/linux/mediatek/patches-6.6/950-smartrg-i2c-led-driver.patch