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

title: Samsung Aries audio complex with WM8994 codec

maintainers:
  - Jonathan Bakker <xc-racer2@live.ca>

properties:
  compatible:
    enum:
      # With FM radio and modem master
      - samsung,aries-wm8994
      # Without FM radio and modem slave
      - samsung,fascinate4g-wm8994

  model:
    $ref: /schemas/types.yaml#/definitions/string
    description: The user-visible name of this sound complex.

  cpu:
    type: object
    properties:
      sound-dai:
        minItems: 2
        maxItems: 2
        description: |
          phandles to the I2S controller and bluetooth codec,
          in that order
    required:
      - sound-dai

  codec:
    type: object
    properties:
      sound-dai:
        maxItems: 1
        description: phandle to the WM8994 CODEC
    required:
      - sound-dai

  samsung,audio-routing:
    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
    description: |
      List of the connections between audio
      components;  each entry is a pair of strings, the first being the
      connection's sink, the second being the connection's source;
      valid names for sources and sinks are the WM8994's pins (as
      documented in its binding), and the jacks on the board -
      For samsung,aries-wm8994: HP, SPK, RCV, LINE, Main Mic, Headset Mic,
      or FM In
      For samsung,fascinate4g-wm8994: HP, SPK, RCV, LINE, Main Mic,
      or HeadsetMic

  extcon:
    description: Extcon phandle for dock detection

  main-micbias-supply:
    description: Supply for the micbias on the main mic

  headset-micbias-supply:
    description: Supply for the micbias on the headset mic

  earpath-sel-gpios:
    maxItems: 1
    description: GPIO for switching between tv-out and mic paths

  headset-detect-gpios:
    maxItems: 1
    description: GPIO for detection of headset insertion

  headset-key-gpios:
    maxItems: 1
    description: GPIO for detection of headset key press

  io-channels:
    maxItems: 1
    description: IO channel to read micbias voltage for headset detection

  io-channel-names:
    const: headset-detect

required:
  - compatible
  - model
  - cpu
  - codec
  - samsung,audio-routing
  - extcon
  - main-micbias-supply
  - headset-micbias-supply
  - earpath-sel-gpios
  - headset-detect-gpios
  - headset-key-gpios

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    sound {
        compatible = "samsung,fascinate4g-wm8994";

        model = "Fascinate4G";

        extcon = <&fsa9480>;

        main-micbias-supply = <&main_micbias_reg>;
        headset-micbias-supply = <&headset_micbias_reg>;

        earpath-sel-gpios = <&gpj2 6 GPIO_ACTIVE_HIGH>;

        io-channels = <&adc 3>;
        io-channel-names = "headset-detect";
        headset-detect-gpios = <&gph0 6 GPIO_ACTIVE_HIGH>;
        headset-key-gpios = <&gph3 6 GPIO_ACTIVE_HIGH>;

        samsung,audio-routing =
            "HP", "HPOUT1L",
            "HP", "HPOUT1R",

            "SPK", "SPKOUTLN",
            "SPK", "SPKOUTLP",

            "RCV", "HPOUT2N",
            "RCV", "HPOUT2P",

            "LINE", "LINEOUT2N",
            "LINE", "LINEOUT2P",

            "IN1LP", "Main Mic",
            "IN1LN", "Main Mic",

            "IN1RP", "Headset Mic",
            "IN1RN", "Headset Mic";

        pinctrl-names = "default";
        pinctrl-0 = <&headset_det &earpath_sel>;

        cpu {
            sound-dai = <&i2s0>, <&bt_codec>;
        };

        codec {
            sound-dai = <&wm8994>;
        };
    };

