[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <CTMFUY0GPRNK.532E4O05LWKW@otso>
Date: Mon, 26 Jun 2023 10:28:21 +0200
From: "Luca Weiss" <luca.weiss@...rphone.com>
To: "Anjelique Melendez" <quic_amelende@...cinc.com>, <pavel@....cz>,
<lee@...nel.org>, <thierry.reding@...il.com>, <robh+dt@...nel.org>,
<krzysztof.kozlowski+dt@...aro.org>, <conor+dt@...nel.org>,
<agross@...nel.org>, <andersson@...nel.org>
Cc: <konrad.dybcio@...aro.org>, <u.kleine-koenig@...gutronix.de>,
<linux-leds@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linux-arm-msm@...r.kernel.org>,
<linux-pwm@...r.kernel.org>
Subject: Re: [PATCH 0/7] Add support for LUT PPG
Hi Anjelique,
On Wed Jun 21, 2023 at 8:59 PM CEST, Anjelique Melendez wrote:
> In certain PMICs, LUT pattern and LPG configuration can be stored in SDAM
> modules instead of LUT peripheral. This feature is called PPG.
>
> This change series adds support for PPG. Thanks!
Thanks for sending this series!
I've tested this on SDM632 Fairphone 3 and everything appears to work
fine with setting the pattern. Using fbcli from feedbackd[0] the pattern
shows up correctly.
The only thing missing really is the addition of the pbs node and adding
the nvmem/nvmem-names & qcom,pbs-client to the lpg node in pmi632.dtsi -
something like the patch below.
Are you planning to include this in the next revision? Otherwise I can
also send a patch for the pmi632.dtsi after this series has landed.
Tested-by: Luca Weiss <luca.weiss@...rphone.com> # sdm632-fairphone-fp3 (pmi632)
[0] https://source.puri.sm/Librem5/feedbackd
Regards
Luca
diff --git a/arch/arm64/boot/dts/qcom/pmi632.dtsi b/arch/arm64/boot/dts/qcom/pmi632.dtsi
index add206dee01d2e..92ddb7ac6bf311 100644
--- a/arch/arm64/boot/dts/qcom/pmi632.dtsi
+++ b/arch/arm64/boot/dts/qcom/pmi632.dtsi
@@ -127,6 +127,11 @@
status = "disabled";
};
+ pmi632_pbs_client3: qcom,pbs@...0 { // TODO: generic node name
+ compatible = "qcom,pbs";
+ reg = <0x7400>;
+ };
+
pmi632_sdam_7: nvram@...0 {
compatible = "qcom,spmi-sdam";
reg = <0xb600>;
@@ -155,6 +160,10 @@
pmi632_lpg: pwm {
compatible = "qcom,pmi632-lpg";
+ nvmem = <&pmi632_sdam_7>;
+ nvmem-names = "lpg_chan_sdam";
+ qcom,pbs-client = <&pmi632_pbs_client3>;
+
#address-cells = <1>;
#size-cells = <0>;
#pwm-cells = <2>;
>
> Anjelique Melendez (7):
> dt-bindings: soc: qcom: Add qcom-pbs bindings
> dt-bindings: leds: leds-qcom-lpg: Add support for LUT through NVMEM
> devices
> soc: qcom: add QCOM PBS driver
> leds: rgb: leds-qcom-lpg: Add support for LUT pattern through single
> SDAM
> leds: rgb: leds-qcom-lpg: Update PMI632 lpg_data to support PPG
> leds: rgb: leds-qcom-lpg: Support two-nvmem PPG Scheme
> leds: rgb: Update PM8350C lpg_data to support two-nvmem PPG Scheme
>
> .../bindings/leds/leds-qcom-lpg.yaml | 85 ++++
> .../bindings/soc/qcom/qcom-pbs.yaml | 41 ++
> drivers/leds/rgb/leds-qcom-lpg.c | 393 ++++++++++++++++--
> drivers/soc/qcom/Kconfig | 9 +
> drivers/soc/qcom/Makefile | 1 +
> drivers/soc/qcom/qcom-pbs.c | 343 +++++++++++++++
> include/linux/soc/qcom/qcom-pbs.h | 36 ++
> 7 files changed, 877 insertions(+), 31 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom-pbs.yaml
> create mode 100644 drivers/soc/qcom/qcom-pbs.c
> create mode 100644 include/linux/soc/qcom/qcom-pbs.h
Powered by blists - more mailing lists