# 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:
  - 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:
    items:
      - description: key release
      - description: key press

  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 IRQ_TYPE_EDGE_RISING>, <51 IRQ_TYPE_EDGE_RISING>;
         debounce = <15625>;
         pull-up;
       };
     };
   };
...