# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/power/reset/qcom,pon.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm PON Device

maintainers:
  - Vinod Koul <vkoul@kernel.org>

description: |
  The Power On device for Qualcomm PM8xxx is MFD supporting pwrkey
  and resin along with the Android reboot-mode.

  This DT node has pwrkey and resin as sub nodes.

allOf:
  - $ref: reboot-mode.yaml#

properties:
  compatible:
    enum:
      - qcom,pm8916-pon
      - qcom,pms405-pon
      - qcom,pm8998-pon

  reg:
    maxItems: 1

  pwrkey:
    type: object
    $ref: "../../input/qcom,pm8941-pwrkey.yaml#"

  resin:
    type: object
    $ref: "../../input/qcom,pm8941-pwrkey.yaml#"

required:
  - compatible
  - reg

unevaluatedProperties: false

examples:
  - |
   #include <dt-bindings/interrupt-controller/irq.h>
   #include <dt-bindings/input/linux-event-codes.h>
   #include <dt-bindings/spmi/spmi.h>
   spmi_bus: spmi@c440000 {
     reg = <0x0c440000 0x1100>;
     #address-cells = <2>;
     #size-cells = <0>;
     pmk8350: pmic@0 {
       reg = <0x0 SPMI_USID>;
       #address-cells = <1>;
       #size-cells = <0>;
       pmk8350_pon: pon_hlos@1300 {
         reg = <0x1300>;
         compatible = "qcom,pm8998-pon";

         pwrkey {
            compatible = "qcom,pm8941-pwrkey";
            interrupts = < 0x0 0x8 0 IRQ_TYPE_EDGE_BOTH >;
            debounce = <15625>;
            bias-pull-up;
            linux,code = <KEY_POWER>;
         };

         resin {
            compatible = "qcom,pm8941-resin";
            interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
            debounce = <15625>;
            bias-pull-up;
            linux,code = <KEY_VOLUMEDOWN>;
         };
       };
     };
   };
...
