# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/cirrus,cs35l41.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Cirrus Logic CS35L41 Speaker Amplifier

maintainers:
  - david.rhodes@cirrus.com

description: |
  CS35L41 is a boosted mono Class D amplifier with DSP
  speaker protection and equalization

properties:
  compatible:
    enum:
      - cirrus,cs35l40
      - cirrus,cs35l41

  reg:
    maxItems: 1

  '#sound-dai-cells':
    description:
      The first cell indicating the audio interface.
    const: 1

  reset-gpios:
    maxItems: 1

  VA-supply:
    description: voltage regulator phandle for the VA supply

  VP-supply:
    description: voltage regulator phandle for the VP supply

  cirrus,boost-peak-milliamp:
    description:
      Boost-converter peak current limit in mA.
      Configures the peak current by monitoring the current through the boost FET.
      Range starts at 1600 mA and goes to a maximum of 4500 mA with increments
      of 50 mA. See section 4.3.6 of the datasheet for details.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 1600
    maximum: 4500
    default: 4500

  cirrus,boost-ind-nanohenry:
    description:
      Boost inductor value, expressed in nH. Valid
      values include 1000, 1200, 1500 and 2200.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 1000
    maximum: 2200

  cirrus,boost-cap-microfarad:
    description:
      Total equivalent boost capacitance on the VBST
      and VAMP pins, derated at 11 volts DC. The value must be rounded to the
      nearest integer and expressed in uF.
    $ref: "/schemas/types.yaml#/definitions/uint32"

  cirrus,asp-sdout-hiz:
    description:
      Audio serial port SDOUT Hi-Z control. Sets the Hi-Z
      configuration for SDOUT pin of amplifier.
      0 = Logic 0 during unused slots, and while all transmit channels disabled
      1 = Hi-Z during unused slots but logic 0 while all transmit channels disabled
      2 = (Default) Logic 0 during unused slots, but Hi-Z while all transmit channels disabled
      3 = Hi-Z during unused slots and while all transmit channels disabled
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 0
    maximum: 3
    default: 2

  cirrus,gpio1-polarity-invert:
    description:
      Boolean which specifies whether the GPIO1
      level is inverted. If this property is not present the level is not inverted.
    type: boolean

  cirrus,gpio1-output-enable:
    description:
      Boolean which specifies whether the GPIO1 pin
      is configured as an output. If this property is not present the
      pin will be configured as an input.
    type: boolean

  cirrus,gpio1-src-select:
    description:
      Configures the function of the GPIO1 pin.
      Note that the options are different from the GPIO2 pin
      0 = High Impedance (Default)
      1 = GPIO
      2 = Sync
      3 = MCLK input
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 0
    maximum: 3

  cirrus,gpio2-polarity-invert:
    description:
      Boolean which specifies whether the GPIO2
      level is inverted. If this property is not present the level is not inverted.
    type: boolean

  cirrus,gpio2-output-enable:
    description:
      Boolean which specifies whether the GPIO2 pin
      is configured as an output. If this property is not present the
      pin will be configured as an input.
    type: boolean

  cirrus,gpio2-src-select:
    description:
      Configures the function of the GPIO2 pin.
      Note that the options are different from the GPIO1 pin.
      0 = High Impedance (Default)
      1 = GPIO
      2 = Open Drain INTB
      3 = MCLK input
      4 = Push-pull INTB (active low)
      5 = Push-pull INT (active high)
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 0
    maximum: 5

required:
  - compatible
  - reg
  - "#sound-dai-cells"
  - cirrus,boost-peak-milliamp
  - cirrus,boost-ind-nanohenry
  - cirrus,boost-cap-microfarad

additionalProperties: false

examples:
  - |
    spi {
        #address-cells = <1>;
        #size-cells = <0>;

        cs35l41: cs35l41@2 {
          #sound-dai-cells = <1>;
          compatible = "cirrus,cs35l41";
          reg = <2>;
          VA-supply = <&dummy_vreg>;
          VP-supply = <&dummy_vreg>;
          reset-gpios = <&gpio 110 0>;
          cirrus,boost-peak-milliamp = <4500>;
          cirrus,boost-ind-nanohenry = <1000>;
          cirrus,boost-cap-microfarad = <15>;
        };
    };
