# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/atmel,sam9x5-wm8731-audio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Atmel at91sam9x5ek wm8731 audio complex

maintainers:
  - Dharma Balasubiramani <dharma.b@microchip.com>

description:
  The audio complex configuration for Atmel at91sam9x5ek with WM8731 audio codec.

properties:
  compatible:
    const: atmel,sam9x5-wm8731-audio

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

  atmel,ssc-controller:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: The phandle of the SSC controller.

  atmel,audio-codec:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: The phandle of the WM8731 audio codec.

  atmel,audio-routing:
    description:
      A 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.
    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
    items:
      enum:
        # Board Connectors
        - Headphone Jack
        - Line In Jack

        # CODEC Pins
        - LOUT
        - ROUT
        - LHPOUT
        - RHPOUT
        - LLINEIN
        - RLINEIN
        - MICIN

required:
  - compatible
  - atmel,model
  - atmel,ssc-controller
  - atmel,audio-codec
  - atmel,audio-routing

additionalProperties: false

examples:
  - |
    sound {
        compatible = "atmel,sam9x5-wm8731-audio";

        atmel,model = "wm8731 @ AT91SAM9X5EK";

        atmel,audio-routing =
                "Headphone Jack", "RHPOUT",
                "Headphone Jack", "LHPOUT",
                "LLINEIN", "Line In Jack",
                "RLINEIN", "Line In Jack";

        atmel,ssc-controller = <&ssc0>;
        atmel,audio-codec = <&wm8731>;
    };
