Convert input/qcom,pm8xxx-pwrkey.txt to YAML, and take in account that
the PM8921 pwrkey compatible is used as fallback for the PM8018 pwrkey.
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
diff --git a/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml b/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml
new file mode 100644
index 000000000000..ae38c4ef4932
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/qcom,pm8921-pwrkey.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm PM8921 PMIC Power Key
+
+maintainers:
+ - Andy Gross <agross@kernel.org>
+ - Bjorn Andersson <andersson@kernel.org>
+
+allOf:
+ - $ref: input.yaml#
+
+properties:
+ compatible:
+ oneOf:
+ - enum:
+ - qcom,pm8921-pwrkey
+ - qcom,pm8058-pwrkey
+ - items:
+ - enum:
+ - qcom,pm8018-pwrkey
+ - const: qcom,pm8921-pwrkey
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 2
+ description: |
+ The first interrupt specifies the key release interrupt
+ and the second interrupt specifies the key press interrupt.
+
+ debounce:
+ description: |
+ Time in microseconds that key must be pressed or
+ released for state change interrupt to trigger.
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ pull-up:
+ description: |
+ Presence of this property indicates that the KPDPWR_N
+ pin should be configured for pull up.
+ $ref: /schemas/types.yaml#/definitions/flag
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+ ssbi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pmic@0 {
+ reg = <0x0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pwrkey@1c {
+ compatible = "qcom,pm8921-pwrkey";
+ reg = <0x1c>;
+ interrupt-parent = <&pmicint>;
+ interrupts = <50 1>, <51 1>;
+ debounce = <15625>;
+ pull-up;
+ };
+ };
+ };
+...
diff --git a/Documentation/devicetree/bindings/input/qcom,pm8xxx-pwrkey.txt b/Documentation/devicetree/bindings/input/qcom,pm8xxx-pwrkey.txt
deleted file mode 100644
index 588536cc96ed..000000000000
--- a/Documentation/devicetree/bindings/input/qcom,pm8xxx-pwrkey.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-Qualcomm PM8xxx PMIC Power Key
-
-PROPERTIES
-
-- compatible:
- Usage: required
- Value type: <string>
- Definition: must be one of:
- "qcom,pm8058-pwrkey"
- "qcom,pm8921-pwrkey"
-
-- reg:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: address of power key control register
-
-- interrupts:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: the first interrupt specifies the key release interrupt
- and the second interrupt specifies the key press interrupt.
- The format of the specifier is defined by the binding
- document describing the node's interrupt parent.
-
-- debounce:
- Usage: optional
- Value type: <u32>
- Definition: time in microseconds that key must be pressed or release
- for state change interrupt to trigger.
-
-- pull-up:
- Usage: optional
- Value type: <empty>
- Definition: presence of this property indicates that the KPDPWR_N pin
- should be configured for pull up.
-
-EXAMPLE
-
- pwrkey@1c {
- compatible = "qcom,pm8921-pwrkey";
- reg = <0x1c>;
- interrupt-parent = <&pmicintc>;
- interrupts = <50 1>, <51 1>;
- debounce = <15625>;
- pull-up;
- };
--
b4 0.10.0
On 04/10/2022 10:08, Neil Armstrong wrote:
> Convert input/qcom,pm8xxx-pwrkey.txt to YAML, and take in account that
> the PM8921 pwrkey compatible is used as fallback for the PM8018 pwrkey.
>
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>
You miss diffstat... but I guess it's result of b4?
> diff --git a/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml b/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml
> new file mode 100644
> index 000000000000..ae38c4ef4932
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml
> @@ -0,0 +1,77 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/input/qcom,pm8921-pwrkey.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm PM8921 PMIC Power Key
> +
> +maintainers:
> + - Andy Gross <agross@kernel.org>
> + - Bjorn Andersson <andersson@kernel.org>
Keep only Bjorn. Andy did not review much for some time.
> +
> +allOf:
> + - $ref: input.yaml#
> +
> +properties:
> + compatible:
> + oneOf:
> + - enum:
> + - qcom,pm8921-pwrkey
> + - qcom,pm8058-pwrkey
> + - items:
> + - enum:
> + - qcom,pm8018-pwrkey
> + - const: qcom,pm8921-pwrkey
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 2
> + description: |
> + The first interrupt specifies the key release interrupt
> + and the second interrupt specifies the key press interrupt.
In such case better to drop maxItems and description and write it:
items:
- description: key release interrupt
- description: key press interrupt
(maybe even the "interrupt" word could be skipped...)
> +
> + debounce:
> + description: |
> + Time in microseconds that key must be pressed or
> + released for state change interrupt to trigger.
> + $ref: /schemas/types.yaml#/definitions/uint32
> +
> + pull-up:
> + description: |
> + Presence of this property indicates that the KPDPWR_N
> + pin should be configured for pull up.
> + $ref: /schemas/types.yaml#/definitions/flag
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/irq.h>
> + ssbi {
> + #address-cells = <1>;
> + #size-cells = <0>;
Messed indentation.
> +
> + pmic@0 {
> + reg = <0x0>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + pwrkey@1c {
> + compatible = "qcom,pm8921-pwrkey";
Messed up indentation. For entire DTS example keep 2 or 4 spaces.
> + reg = <0x1c>;
> + interrupt-parent = <&pmicint>;
> + interrupts = <50 1>, <51 1>;
Use defines for interrupt flags.
> + debounce = <15625>;
> + pull-up;
> + };
> + };
> + };
Best regards,
Krzysztof
Hi,
On 04/10/2022 10:59, Krzysztof Kozlowski wrote:
> On 04/10/2022 10:08, Neil Armstrong wrote:
>> Convert input/qcom,pm8xxx-pwrkey.txt to YAML, and take in account that
>> the PM8921 pwrkey compatible is used as fallback for the PM8018 pwrkey.
>>
>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>>
>
> You miss diffstat... but I guess it's result of b4?
Yep, I'll update with last release to get it back.
>
>> diff --git a/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml b/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml
>> new file mode 100644
>> index 000000000000..ae38c4ef4932
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/input/qcom,pm8921-pwrkey.yaml
>> @@ -0,0 +1,77 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/input/qcom,pm8921-pwrkey.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Qualcomm PM8921 PMIC Power Key
>> +
>> +maintainers:
>> + - Andy Gross <agross@kernel.org>
>> + - Bjorn Andersson <andersson@kernel.org>
>
> Keep only Bjorn. Andy did not review much for some time.
Ack
>
>> +
>> +allOf:
>> + - $ref: input.yaml#
>> +
>> +properties:
>> + compatible:
>> + oneOf:
>> + - enum:
>> + - qcom,pm8921-pwrkey
>> + - qcom,pm8058-pwrkey
>> + - items:
>> + - enum:
>> + - qcom,pm8018-pwrkey
>> + - const: qcom,pm8921-pwrkey
>> +
>> + reg:
>> + maxItems: 1
>> +
>> + interrupts:
>> + maxItems: 2
>> + description: |
>> + The first interrupt specifies the key release interrupt
>> + and the second interrupt specifies the key press interrupt.
>
> In such case better to drop maxItems and description and write it:
>
> items:
> - description: key release interrupt
> - description: key press interrupt
>
> (maybe even the "interrupt" word could be skipped...)
Ack, will do that without the interrupt word
>
>> +
>> + debounce:
>> + description: |
>> + Time in microseconds that key must be pressed or
>> + released for state change interrupt to trigger.
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> +
>> + pull-up:
>> + description: |
>> + Presence of this property indicates that the KPDPWR_N
>> + pin should be configured for pull up.
>> + $ref: /schemas/types.yaml#/definitions/flag
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - interrupts
>> +
>> +unevaluatedProperties: false
>> +
>> +examples:
>> + - |
>> + #include <dt-bindings/interrupt-controller/irq.h>
>> + ssbi {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>
> Messed indentation.
>> +
>> + pmic@0 {
>> + reg = <0x0>;
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + pwrkey@1c {
>> + compatible = "qcom,pm8921-pwrkey";
>
> Messed up indentation. For entire DTS example keep 2 or 4 spaces.
>
>> + reg = <0x1c>;
>> + interrupt-parent = <&pmicint>;
>> + interrupts = <50 1>, <51 1>;
>
> Use defines for interrupt flags.
>
>> + debounce = <15625>;
>> + pull-up;
>> + };
>> + };
>> + };
Will fix the example,
>
> Best regards,
> Krzysztof
>
Thanks,
Neil
© 2016 - 2025 Red Hat, Inc.