Unverified Commit 9ac47908 authored by Maciej Falkowski's avatar Maciej Falkowski Committed by Mark Brown
Browse files

dt-bindings: sound: Convert Samsung Exynos Odroid XU3/XU4 audio complex to dt-schema



Convert Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec
to newer dt-schema format.

'clocks' property is unneeded in the bindings and is left undefined in 'properties'.

'samsung,audio-widgets' and 'samsung,audio-routing' are optional from driver
perspective and they are set as unrequired.

Signed-off-by: default avatarMaciej Falkowski <m.falkowski@samsung.com>
[mszyprow: reordered non-standard properties]
Signed-off-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20191017100529.4183-1-m.szyprowski@samsung.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 1092b097
Loading
Loading
Loading
Loading
+0 −54
Original line number Diff line number Diff line
Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec

Required properties:

 - compatible - "hardkernel,odroid-xu3-audio" - for Odroid XU3 board,
		"hardkernel,odroid-xu4-audio" - for Odroid XU4 board (deprecated),
		"samsung,odroid-xu3-audio" - for Odroid XU3 board (deprecated),
		"samsung,odroid-xu4-audio" - for Odroid XU4 board (deprecated)
 - model - the user-visible name of this sound complex
 - clocks - should contain entries matching clock names in the clock-names
    property
 - samsung,audio-widgets - this property specifies off-codec audio elements
   like headphones or speakers, for details see widgets.txt
 - samsung,audio-routing - 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;
   valid names for sources and sinks are the MAX98090's pins (as
   documented in its binding), and the jacks on the board

   For Odroid X2:
     "Headphone Jack", "Mic Jack", "DMIC"

   For Odroid U3, XU3:
     "Headphone Jack", "Speakers"

   For Odroid XU4:
     no entries

Required sub-nodes:

 - 'cpu' subnode with a 'sound-dai' property containing the phandle of the I2S
    controller
 - 'codec' subnode with a 'sound-dai' property containing list of phandles
    to the CODEC nodes, first entry must be corresponding to the MAX98090
    CODEC and the second entry must be the phandle of the HDMI IP block node

Example:

sound {
	compatible = "hardkernel,odroid-xu3-audio";
	model = "Odroid-XU3";
	samsung,audio-routing =
		"Headphone Jack", "HPL",
		"Headphone Jack", "HPR",
		"IN1", "Mic Jack",
		"Mic Jack", "MICBIAS";

	cpu {
		sound-dai = <&i2s0 0>;
	};
	codec {
		sound-dai = <&hdmi>, <&max98090>;
	};
};
+91 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/samsung,odroid.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec

maintainers:
  - Krzysztof Kozlowski <krzk@kernel.org>
  - Sylwester Nawrocki <s.nawrocki@samsung.com>

properties:
  compatible:
    oneOf:
      - const: hardkernel,odroid-xu3-audio

      - const: hardkernel,odroid-xu4-audio
        deprecated: true

      - const: samsung,odroid-xu3-audio
        deprecated: true

      - const: samsung,odroid-xu4-audio
        deprecated: true

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

  cpu:
    type: object
    properties:
      sound-dai:
        $ref: /schemas/types.yaml#/definitions/phandle-array
        description: phandles to the I2S controllers

  codec:
    type: object
    properties:
      sound-dai:
        $ref: /schemas/types.yaml#/definitions/phandle-array
        description: |
          List of phandles to the CODEC nodes,
          first entry must be corresponding to the MAX98090 CODEC and
          the second entry must be the phandle of the HDMI IP block node.

  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 MAX98090's pins (as
      documented in its binding), and the jacks on the board.
      For Odroid X2: "Headphone Jack", "Mic Jack", "DMIC"
      For Odroid U3, XU3: "Headphone Jack", "Speakers"
      For Odroid XU4: no entries

  samsung,audio-widgets:
    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
    description: |
      This property specifies off-codec audio elements
      like headphones or speakers, for details see widgets.txt

required:
  - compatible
  - model
  - cpu
  - codec

examples:
  - |
    sound {
        compatible = "hardkernel,odroid-xu3-audio";
        model = "Odroid-XU3";
        samsung,audio-routing =
                "Headphone Jack", "HPL",
                "Headphone Jack", "HPR",
                "IN1", "Mic Jack",
                "Mic Jack", "MICBIAS";

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

        codec {
            sound-dai = <&hdmi>, <&max98090>;
        };
    };