Hi Bjorn, On Mittwoch, 21. Oktober 2020 22:12:22 CEST Bjorn Andersson wrote: > The Light Pulse Generator (LPG) is a PWM-block found in a wide range of > PMICs from Qualcomm. It can operate on fixed parameters or based on a > lookup-table, altering the duty cycle over time - which provides the > means for e.g. hardware assisted transitions of LED brightness. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > --- > > Changes since v5: > - Make sure to not used the state of the last channel in a group to > determine if the current sink should be active for all channels in the > group. - Replacement of unsigned -1 with UINT_MAX > - Work around potential overflow by using larger data types, instead of > separate code paths - Use cpu_to_l16() rather than hand rolling them > - Minor style cleanups > > drivers/leds/Kconfig | 9 + > drivers/leds/Makefile | 1 + > drivers/leds/leds-qcom-lpg.c | 1190 ++++++++++++++++++++++++++++++++++ > 3 files changed, 1200 insertions(+) > create mode 100644 drivers/leds/leds-qcom-lpg.c Tested on msm8974 (pm8941) on the Fairphone 2, works great there! Tested-by: Luca Weiss <luca@xxxxxxxxx> Regards Luca