# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/power/supply/qcom,pm8941-charger.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Switch-Mode Battery Charger and Boost

maintainers:
  - Sebastian Reichel <sre@kernel.org>

properties:
  compatible:
    const: qcom,pm8941-charger

  reg:
    maxItems: 1

  interrupts:
    items:
      - description: charge done
      - description: charge fast mode
      - description: charge trickle mode
      - description: battery temperature ok
      - description: battery present
      - description: charger disconnected
      - description: USB-in valid
      - description: DC-in valid

  interrupt-names:
    items:
      - const: chg-done
      - const: chg-fast
      - const: chg-trkl
      - const: bat-temp-ok
      - const: bat-present
      - const: chg-gone
      - const: usb-valid
      - const: dc-valid

  qcom,fast-charge-current-limit:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 100000
    maximum: 3000000
    description: Maximum charge current in uA; May be clamped to safety limits; Defaults to 1A

  qcom,fast-charge-low-threshold-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 2100000
    maximum: 3600000
    description: |
      Battery voltage limit in uV above which fast charging may operate; Defaults to 3.2V
      Below this value linear or switch-mode auto-trickle-charging will operate.

  qcom,fast-charge-high-threshold-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 3240000
    maximum: 5000000
    description: |
      Battery voltage limit in uV below which fast charging may operate; Defaults to 4.2V
      The fast charger will attempt to charge the battery to this voltage.
      May be clamped to safety limits.

  qcom,fast-charge-safe-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 3240000
    maximum: 5000000
    description: |
      Maximum safe battery voltage in uV; May be pre-set by bootloader, in which case,
      setting this will harmlessly fail. The property 'fast-charge-high-watermark' will
      be clamped by this value. Defaults to 4.2V.

  qcom,fast-charge-safe-current:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 100000
    maximum: 3000000
    description: |
      Maximum safe battery charge current in uA; May pre-set by bootloader, in which case,
      setting this will harmlessly fail. The property 'qcom,fast-charge-current-limit'
      will be clamped by this value. Defaults to 1A.

  qcom,auto-recharge-threshold-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 3240000
    maximum: 5000000
    description: |
      Battery voltage limit in uV below which auto-recharge functionality will restart charging
      after end-of-charge; The high cutoff limit for auto-recharge is 5% above this value.
      Defaults to 4.1V.

  qcom,minimum-input-voltage:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 4200000
    maximum: 9600000
    description: |
      Input voltage level in uV above which charging may operate. Defaults to 4.3V.

  qcom,dc-current-limit:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 100000
    maximum: 2500000
    description: |
      Default DC charge current limit in uA. Defaults to 100mA.

  qcom,disable-dc:
    type: boolean
    description: Disable DC charger

  qcom,jeita-extended-temp-range:
    type: boolean
    description: |
      Enable JEITA extended temperature range;  This does *not* adjust the maximum charge
      voltage or current in the extended temperature range. It only allows charging when
      the battery is in the extended temperature range. Voltage/current regulation must
      be done externally to fully comply with the JEITA safety guidelines if this flag
      is set.

  usb-otg-in-supply:
    description: Reference to the regulator supplying power to the USB_OTG_IN pin.

  otg-vbus:
    type: object
    description: |
      This node defines a regulator used to control the direction of VBUS voltage.
      Specifically whether to supply voltage to VBUS for host mode operation of the OTG port,
      or allow input voltage from external VBUS for charging. In the hardware, the supply for
      this regulator comes from usb_otg_in-supply.

required:
  - compatible
  - reg
  - interrupts
  - interrupt-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    pmic {
      #address-cells = <1>;
      #size-cells = <0>;

      charger@1000 {
        compatible = "qcom,pm8941-charger";
        reg = <0x1000>;
        interrupts = <0x0 0x10 7 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x10 5 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x10 4 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x12 1 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x12 0 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x13 2 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x13 1 IRQ_TYPE_EDGE_BOTH>,
                     <0x0 0x14 1 IRQ_TYPE_EDGE_BOTH>;
        interrupt-names = "chg-done",
                          "chg-fast",
                          "chg-trkl",
                          "bat-temp-ok",
                          "bat-present",
                          "chg-gone",
                          "usb-valid",
                          "dc-valid";
        qcom,fast-charge-current-limit = <1000000>;
        qcom,dc-current-limit = <1000000>;
        usb-otg-in-supply = <&pm8941_5vs1>;

        otg-vbus {};
      };
    };
