# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/sgtl5000.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale SGTL5000 Stereo Codec

maintainers:
  - Fabio Estevam <festevam@gmail.com>

allOf:
  - $ref: dai-common.yaml#

properties:
  compatible:
    const: fsl,sgtl5000

  reg:
    maxItems: 1

  "#sound-dai-cells":
    const: 0

  assigned-clock-parents: true
  assigned-clock-rates: true
  assigned-clocks: true

  clocks:
    items:
      - description: the clock provider of SYS_MCLK

  VDDA-supply:
    description: the regulator provider of VDDA

  VDDIO-supply:
    description: the regulator provider of VDDIO

  VDDD-supply:
    description: the regulator provider of VDDD

  micbias-resistor-k-ohms:
    description: The bias resistor to be used in kOhms. The resistor can take
      values of 2k, 4k or 8k. If set to 0 it will be off. If this node is not
      mentioned or if the value is unknown, then micbias resistor is set to
      4k.
    enum: [ 0, 2, 4, 8 ]

  micbias-voltage-m-volts:
    description: The bias voltage to be used in mVolts. The voltage can take
      values from 1.25V to 3V by 250mV steps. If this node is not mentioned
      or the value is unknown, then the value is set to 1.25V.
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [ 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000 ]

  lrclk-strength:
    description: |
      The LRCLK pad strength. Possible values are: 0, 1, 2 and 3 as per the
      table below:

        VDDIO		1.8V		2.5V		3.3V
        0 =		Disable
        1 =		1.66 mA		2.87 mA		4.02  mA
        2 =		3.33 mA		5.74 mA		8.03  mA
        3 =		4.99 mA		8.61 mA		12.05 mA
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [ 0, 1, 2, 3 ]

  sclk-strength:
    description: |
      The SCLK pad strength. Possible values are: 0, 1, 2 and 3 as per the
      table below:

        VDDIO		1.8V		2.5V		3.3V
        0 =		Disable
        1 =		1.66 mA		2.87 mA		4.02  mA
        2 =		3.33 mA		5.74 mA		8.03  mA
        3 =		4.99 mA		8.61 mA		12.05 mA
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [ 0, 1, 2, 3 ]

  port:
    $ref: audio-graph-port.yaml#
    unevaluatedProperties: false

required:
  - compatible
  - reg
  - "#sound-dai-cells"
  - clocks
  - VDDA-supply
  - VDDIO-supply

unevaluatedProperties: false

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

        codec@a {
            compatible = "fsl,sgtl5000";
            reg = <0x0a>;
            #sound-dai-cells = <0>;
            clocks = <&clks 150>;
            micbias-resistor-k-ohms = <2>;
            micbias-voltage-m-volts = <2250>;
            VDDA-supply = <&reg_3p3v>;
            VDDIO-supply = <&reg_3p3v>;
        };
    };
...