public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: qcom: monaco-pmics: Add PON power key and reset inputs
@ 2026-01-22  6:59 Rakesh Kota
  2026-01-30 11:18 ` Konrad Dybcio
  0 siblings, 1 reply; 4+ messages in thread
From: Rakesh Kota @ 2026-01-22  6:59 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, kamal.wadhwa,
	rakesh.kota

Add the Power On (PON) peripheral with power key and reset input
support for the PMM8654AU PMIC on Monaco platforms.

Signed-off-by: Rakesh Kota <rakesh.kota@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/monaco-pmics.dtsi | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
index e990d7367719beaa9e0cea87d9c183ae18c3ebc8..051407cd83eef8eace8521084b1ad012a5192ace 100644
--- a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
+++ b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
@@ -13,6 +13,26 @@ pmm8620au_0: pmic@0 {
 		#address-cells = <1>;
 		#size-cells = <0>;
 
+		pmm8654au_0_pon: pon@1200 {
+			compatible = "qcom,pmk8350-pon";
+			reg = <0x1200>, <0x800>;
+			reg-names = "hlos", "pbs";
+
+			pmm8654au_0_pon_pwrkey: pwrkey {
+				compatible = "qcom,pmk8350-pwrkey";
+				interrupts-extended = <&spmi_bus 0x0 0x12 0x7 IRQ_TYPE_EDGE_BOTH>;
+				linux,code = <KEY_POWER>;
+				debounce = <15625>;
+			};
+
+			pmm8654au_0_pon_resin: resin {
+				compatible = "qcom,pmk8350-resin";
+				interrupts-extended = <&spmi_bus 0x0 0x12 0x6 IRQ_TYPE_EDGE_BOTH>;
+				linux,code = <KEY_VOLUMEDOWN>;
+				debounce = <15625>;
+			};
+		};
+
 		pmm8620au_0_rtc: rtc@6100 {
 			compatible = "qcom,pmk8350-rtc";
 			reg = <0x6100>, <0x6200>;

---
base-commit: 053966c344dbd346e71305f530e91ea77916189f
change-id: 20260121-add_pwrkey_and_resin-9e2df19bfed8

Best regards,
-- 
Rakesh Kota <rakesh.kota@oss.qualcomm.com>


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: qcom: monaco-pmics: Add PON power key and reset inputs
  2026-01-22  6:59 [PATCH] arm64: dts: qcom: monaco-pmics: Add PON power key and reset inputs Rakesh Kota
@ 2026-01-30 11:18 ` Konrad Dybcio
  2026-04-15 10:24   ` Rakesh Kota
  0 siblings, 1 reply; 4+ messages in thread
From: Konrad Dybcio @ 2026-01-30 11:18 UTC (permalink / raw)
  To: Rakesh Kota, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, kamal.wadhwa

On 1/22/26 7:59 AM, Rakesh Kota wrote:
> Add the Power On (PON) peripheral with power key and reset input
> support for the PMM8654AU PMIC on Monaco platforms.
> 
> Signed-off-by: Rakesh Kota <rakesh.kota@oss.qualcomm.com>
> ---
>  arch/arm64/boot/dts/qcom/monaco-pmics.dtsi | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
> index e990d7367719beaa9e0cea87d9c183ae18c3ebc8..051407cd83eef8eace8521084b1ad012a5192ace 100644
> --- a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
> +++ b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
> @@ -13,6 +13,26 @@ pmm8620au_0: pmic@0 {
>  		#address-cells = <1>;
>  		#size-cells = <0>;
>  
> +		pmm8654au_0_pon: pon@1200 {
> +			compatible = "qcom,pmk8350-pon";

I see pmm8655x has some slight changes vs pmk8350 (more configs but
generally backwards compatible if we don't use them), let's add a
separate compatible in bindings so that we can maybe handle these
differences down the line:

diff --git a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
index 979a377cb4ff..14b85b0d97da 100644
--- a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
+++ b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
@@ -17,12 +17,16 @@ description: |
 
 properties:
   compatible:
-    enum:
-      - qcom,pm8916-pon
-      - qcom,pm8941-pon
-      - qcom,pms405-pon
-      - qcom,pm8998-pon
-      - qcom,pmk8350-pon
+    oneOf:
+      - enum:
+          - qcom,pm8916-pon
+          - qcom,pm8941-pon
+          - qcom,pms405-pon
+          - qcom,pm8998-pon
+          - qcom,pmk8350-pon
+      - items:
+          - const: qcom,pmm8654au-pon
+          - const: qcom,pmk8350-pon
 


Konrad

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: qcom: monaco-pmics: Add PON power key and reset inputs
  2026-01-30 11:18 ` Konrad Dybcio
@ 2026-04-15 10:24   ` Rakesh Kota
  2026-04-27 14:25     ` Konrad Dybcio
  0 siblings, 1 reply; 4+ messages in thread
From: Rakesh Kota @ 2026-04-15 10:24 UTC (permalink / raw)
  To: Konrad Dybcio
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, linux-arm-msm, devicetree, linux-kernel,
	kamal.wadhwa, rakesh.kota

On Fri, Jan 30, 2026 at 12:18:53PM +0100, Konrad Dybcio wrote:
> On 1/22/26 7:59 AM, Rakesh Kota wrote:
> > Add the Power On (PON) peripheral with power key and reset input
> > support for the PMM8654AU PMIC on Monaco platforms.
> > 
> > Signed-off-by: Rakesh Kota <rakesh.kota@oss.qualcomm.com>
> > ---
> >  arch/arm64/boot/dts/qcom/monaco-pmics.dtsi | 20 ++++++++++++++++++++
> >  1 file changed, 20 insertions(+)
> > 
> > diff --git a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
> > index e990d7367719beaa9e0cea87d9c183ae18c3ebc8..051407cd83eef8eace8521084b1ad012a5192ace 100644
> > --- a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
> > +++ b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
> > @@ -13,6 +13,26 @@ pmm8620au_0: pmic@0 {
> >  		#address-cells = <1>;
> >  		#size-cells = <0>;
> >  
> > +		pmm8654au_0_pon: pon@1200 {
> > +			compatible = "qcom,pmk8350-pon";
> 
> I see pmm8655x has some slight changes vs pmk8350 (more configs but
> generally backwards compatible if we don't use them), let's add a
> separate compatible in bindings so that we can maybe handle these
> differences down the line:
> 
> diff --git a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
> index 979a377cb4ff..14b85b0d97da 100644
> --- a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
> +++ b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
> @@ -17,12 +17,16 @@ description: |
>  
>  properties:
>    compatible:
> -    enum:
> -      - qcom,pm8916-pon
> -      - qcom,pm8941-pon
> -      - qcom,pms405-pon
> -      - qcom,pm8998-pon
> -      - qcom,pmk8350-pon
> +    oneOf:
> +      - enum:
> +          - qcom,pm8916-pon
> +          - qcom,pm8941-pon
> +          - qcom,pms405-pon
> +          - qcom,pm8998-pon
> +          - qcom,pmk8350-pon
> +      - items:
> +          - const: qcom,pmm8654au-pon
> +          - const: qcom,pmk8350-pon
> 

Hi Konrad,

Based on the below discussion:
https://lore.kernel.org/all/872faa80-d323-4625-ab8f-50ab2e0e8e0f@kernel.org/

I understand that introducing new compatibles without a corresponding driver
change is not acceptable per upstream community guidelines. As Krzysztof pointed out,
neew compatibles must be accompanied by the necessary driver support.

so,shall we use the old compatible in the current patch series for now ?
And Resume the patch series at https://lore.kernel.org/linux-arm-msm/9c7521fe-5008-4daa-945b-ce3f5c0f6dc0@kernel.org/
once the driver changes are ready and upstreamed ?

reagrs
Rakesh Kota
> 
> 
> Konrad

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: qcom: monaco-pmics: Add PON power key and reset inputs
  2026-04-15 10:24   ` Rakesh Kota
@ 2026-04-27 14:25     ` Konrad Dybcio
  0 siblings, 0 replies; 4+ messages in thread
From: Konrad Dybcio @ 2026-04-27 14:25 UTC (permalink / raw)
  To: Rakesh Kota
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, linux-arm-msm, devicetree, linux-kernel,
	kamal.wadhwa

On 4/15/26 12:24 PM, Rakesh Kota wrote:
> On Fri, Jan 30, 2026 at 12:18:53PM +0100, Konrad Dybcio wrote:
>> On 1/22/26 7:59 AM, Rakesh Kota wrote:
>>> Add the Power On (PON) peripheral with power key and reset input
>>> support for the PMM8654AU PMIC on Monaco platforms.
>>>
>>> Signed-off-by: Rakesh Kota <rakesh.kota@oss.qualcomm.com>
>>> ---
>>>  arch/arm64/boot/dts/qcom/monaco-pmics.dtsi | 20 ++++++++++++++++++++
>>>  1 file changed, 20 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
>>> index e990d7367719beaa9e0cea87d9c183ae18c3ebc8..051407cd83eef8eace8521084b1ad012a5192ace 100644
>>> --- a/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
>>> +++ b/arch/arm64/boot/dts/qcom/monaco-pmics.dtsi
>>> @@ -13,6 +13,26 @@ pmm8620au_0: pmic@0 {
>>>  		#address-cells = <1>;
>>>  		#size-cells = <0>;
>>>  
>>> +		pmm8654au_0_pon: pon@1200 {
>>> +			compatible = "qcom,pmk8350-pon";
>>
>> I see pmm8655x has some slight changes vs pmk8350 (more configs but
>> generally backwards compatible if we don't use them), let's add a
>> separate compatible in bindings so that we can maybe handle these
>> differences down the line:
>>
>> diff --git a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
>> index 979a377cb4ff..14b85b0d97da 100644
>> --- a/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
>> +++ b/Documentation/devicetree/bindings/power/reset/qcom,pon.yaml
>> @@ -17,12 +17,16 @@ description: |
>>  
>>  properties:
>>    compatible:
>> -    enum:
>> -      - qcom,pm8916-pon
>> -      - qcom,pm8941-pon
>> -      - qcom,pms405-pon
>> -      - qcom,pm8998-pon
>> -      - qcom,pmk8350-pon
>> +    oneOf:
>> +      - enum:
>> +          - qcom,pm8916-pon
>> +          - qcom,pm8941-pon
>> +          - qcom,pms405-pon
>> +          - qcom,pm8998-pon
>> +          - qcom,pmk8350-pon
>> +      - items:
>> +          - const: qcom,pmm8654au-pon
>> +          - const: qcom,pmk8350-pon
>>
> 
> Hi Konrad,
> 
> Based on the below discussion:
> https://lore.kernel.org/all/872faa80-d323-4625-ab8f-50ab2e0e8e0f@kernel.org/
> 
> I understand that introducing new compatibles without a corresponding driver
> change is not acceptable per upstream community guidelines. As Krzysztof pointed out,
> neew compatibles must be accompanied by the necessary driver support.
> 
> so,shall we use the old compatible in the current patch series for now ?
> And Resume the patch series at https://lore.kernel.org/linux-arm-msm/9c7521fe-5008-4daa-945b-ce3f5c0f6dc0@kernel.org/
> once the driver changes are ready and upstreamed ?

The last piece of feedback seems to be here:

https://lore.kernel.org/all/9c7521fe-5008-4daa-945b-ce3f5c0f6dc0@kernel.org/

where I believe the diff you're asked to implement against your patch is:

1. Remove the new if:then: block (since by the presence of
"contains:qcom,pmk8350-pon" in the existing one, the PMM8654AU entry (which
falls back to it), will be taken into account too, and the "then:" part is
identical)

2. In the existing if:pmk8350/then: block, the 'reg' part of "then:" is a
repetition of the top-level constraints (i.e. it's a NOP). This is wrong,
because PMK8350 clearly has two address spaces. This is further confusing,
as the commit that originally introduced this (03fccdc76dce ("dt-bindings:
power: reset: qcom-pon: Add new compatible "qcom,pmk8350-pon""))
specifically says "whereas GEN3 peripherals can have two register addresses"
- the "can" was probably supposed to be an unconditional statement instead.

The action from that is to create a separate, preceding commit, changing
minItems:1/maxItems:2 into minItems: 2 for both the reg: and reg-names
part

3. Run `make dt_binding_check DT_SCHEMA_FILES="reset/qcom,pon.yaml"` and
b4 prep --check before your next submission, and squash any errors that
show up

Konrad

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-04-27 14:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-22  6:59 [PATCH] arm64: dts: qcom: monaco-pmics: Add PON power key and reset inputs Rakesh Kota
2026-01-30 11:18 ` Konrad Dybcio
2026-04-15 10:24   ` Rakesh Kota
2026-04-27 14:25     ` Konrad Dybcio

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox