[alsa-devel] [PATCH] dt-bindings: sound: Convert Samsung Exynos5433 TM2(E) audio complex with WM5110 codec to dt-schema
From: Maciej Falkowski m.falkowski@samsung.com
Convert Samsung Exynos5433 TM2(E) audio complex with WM5110 codec to newer dt-schema format.
Signed-off-by: Maciej Falkowski m.falkowski@samsung.com Signed-off-by: Marek Szyprowski m.szyprowski@samsung.com --- .../bindings/sound/samsung,tm2-audio.txt | 42 ---------- .../bindings/sound/samsung,tm2-audio.yaml | 83 +++++++++++++++++++ 2 files changed, 83 insertions(+), 42 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt create mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml
diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt deleted file mode 100644 index f5ccc12ddc00..000000000000 --- a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt +++ /dev/null @@ -1,42 +0,0 @@ -Samsung Exynos5433 TM2(E) audio complex with WM5110 codec - -Required properties: - - - compatible : "samsung,tm2-audio" - - model : the user-visible name of this sound complex - - audio-codec : the first entry should be phandle of the wm5110 audio - codec node, as described in ../mfd/arizona.txt; - the second entry should be phandle of the HDMI - transmitter node - - i2s-controller : the list of phandle and argument tuples pointing to - I2S controllers, the first entry should be I2S0 and - the second one I2S1 - - audio-amplifier : the phandle of the MAX98504 amplifier - - 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 - WM5110's and MAX98504's pins and the jacks on the - board: HP, SPK, Main Mic, Sub Mic, Third Mic, - Headset Mic - - mic-bias-gpios : GPIO pin that enables the Main Mic bias regulator - - -Example: - -sound { - compatible = "samsung,tm2-audio"; - audio-codec = <&wm5110>, <&hdmi>; - i2s-controller = <&i2s0 0>, <&i2s1 0>; - audio-amplifier = <&max98504>; - mic-bias-gpios = <&gpr3 2 0>; - model = "wm5110"; - samsung,audio-routing = - "HP", "HPOUT1L", - "HP", "HPOUT1R", - "SPK", "SPKOUT", - "SPKOUT", "HPOUT2L", - "SPKOUT", "HPOUT2R", - "Main Mic", "MICBIAS2", - "IN1R", "Main Mic"; -}; diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml new file mode 100644 index 000000000000..377f8cbe17b8 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml @@ -0,0 +1,83 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/samsung,tm2-audio.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Samsung Exynos SoC Exynos5433 TM2(E) audio complex with WM5110 codec + +maintainers: + - Krzysztof Kozlowski krzk@kernel.org + - Sylwester Nawrocki s.nawrocki@samsung.com + +properties: + compatible: + const: samsung,tm2-audio + + model: + maxItems: 1 + + audio-codec: + allOf: + - $ref: /schemas/types.yaml#/definitions/phandle-array + - items: + - description: | + phandle of the wm5110 audio codec node, + as described in ../mfd/arizona.txt; + - description: phandle of the HDMI transmitter node. + + i2s-controller: + allOf: + - $ref: /schemas/types.yaml#/definitions/phandle-array + - items: + - description: phandle of the I2S0. + - description: phandle of the I2S1. + + audio-amplifier: + $ref: /schemas/types.yaml#/definitions/phandle + description: phandle of the MAX98504 amplifier. + + 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 WM5110's and MAX98504's pins and the jacks on the + board: HP, SPK, Main Mic, Sub Mic, Third Mic, Headset Mic. + + mic-bias-gpios: + description: GPIO pin that enables the Main Mic bias regulator. + maxItems: 1 + +required: + - compatible + - model + - audio-codec + - i2s-controller + - audio-amplifier + - samsung,audio-routing + - mic-bias-gpios + +additionalProperties: false + +examples: + - | + sound { + compatible = "samsung,tm2-audio"; + model = "wm5110"; + audio-codec = <&wm5110>, <&hdmi>; + i2s-controller = <&i2s0 0>, <&i2s1 0>; + audio-amplifier = <&max98504>; + mic-bias-gpios = <&gpr3>; + samsung,audio-routing = + "HP", "HPOUT1L", + "HP", "HPOUT1R", + "SPK", "SPKOUT", + "SPKOUT", "HPOUT2L", + "SPKOUT", "HPOUT2R", + "Main Mic", "MICBIAS2", + "IN1R", "Main Mic"; + }; +
On Tue, Sep 24, 2019 at 05:01:46PM +0200, Marek Szyprowski wrote:
From: Maciej Falkowski m.falkowski@samsung.com
Convert Samsung Exynos5433 TM2(E) audio complex with WM5110 codec to newer dt-schema format.
Signed-off-by: Maciej Falkowski m.falkowski@samsung.com Signed-off-by: Marek Szyprowski m.szyprowski@samsung.com
.../bindings/sound/samsung,tm2-audio.txt | 42 ---------- .../bindings/sound/samsung,tm2-audio.yaml | 83 +++++++++++++++++++ 2 files changed, 83 insertions(+), 42 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt create mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml
diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt deleted file mode 100644 index f5ccc12ddc00..000000000000 --- a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt +++ /dev/null @@ -1,42 +0,0 @@ -Samsung Exynos5433 TM2(E) audio complex with WM5110 codec
-Required properties:
- compatible : "samsung,tm2-audio"
- model : the user-visible name of this sound complex
- audio-codec : the first entry should be phandle of the wm5110 audio
codec node, as described in ../mfd/arizona.txt;
the second entry should be phandle of the HDMI
transmitter node
- i2s-controller : the list of phandle and argument tuples pointing to
I2S controllers, the first entry should be I2S0 and
the second one I2S1
- audio-amplifier : the phandle of the MAX98504 amplifier
- 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
WM5110's and MAX98504's pins and the jacks on the
board: HP, SPK, Main Mic, Sub Mic, Third Mic,
Headset Mic
- mic-bias-gpios : GPIO pin that enables the Main Mic bias regulator
-Example:
-sound {
- compatible = "samsung,tm2-audio";
- audio-codec = <&wm5110>, <&hdmi>;
- i2s-controller = <&i2s0 0>, <&i2s1 0>;
- audio-amplifier = <&max98504>;
- mic-bias-gpios = <&gpr3 2 0>;
- model = "wm5110";
- samsung,audio-routing =
"HP", "HPOUT1L",
"HP", "HPOUT1R",
"SPK", "SPKOUT",
"SPKOUT", "HPOUT2L",
"SPKOUT", "HPOUT2R",
"Main Mic", "MICBIAS2",
"IN1R", "Main Mic";
-}; diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml new file mode 100644 index 000000000000..377f8cbe17b8 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml @@ -0,0 +1,83 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/samsung,tm2-audio.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Samsung Exynos SoC Exynos5433 TM2(E) audio complex with WM5110 codec
+maintainers:
- Krzysztof Kozlowski krzk@kernel.org
- Sylwester Nawrocki s.nawrocki@samsung.com
+properties:
- compatible:
- const: samsung,tm2-audio
- model:
- maxItems: 1
$ref to string, then maxItems are not needed. Add description (copy-paste).
- audio-codec:
- allOf:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- description: |
phandle of the wm5110 audio codec node,
as described in ../mfd/arizona.txt;
- description: phandle of the HDMI transmitter node.
- i2s-controller:
- allOf:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- description: phandle of the I2S0.
- description: phandle of the I2S1.
- audio-amplifier:
Can you order the nodes here and in required section by name (except compatible which should be first)?
Best regards, Krzysztof
On 9/24/19 5:20 PM, Krzysztof Kozlowski wrote:
On Tue, Sep 24, 2019 at 05:01:46PM +0200, Marek Szyprowski wrote:
From: Maciej Falkowski m.falkowski@samsung.com
Convert Samsung Exynos5433 TM2(E) audio complex with WM5110 codec to newer dt-schema format.
Signed-off-by: Maciej Falkowski m.falkowski@samsung.com Signed-off-by: Marek Szyprowski m.szyprowski@samsung.com
.../bindings/sound/samsung,tm2-audio.txt | 42 ---------- .../bindings/sound/samsung,tm2-audio.yaml | 83 +++++++++++++++++++ 2 files changed, 83 insertions(+), 42 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt create mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml
diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt deleted file mode 100644 index f5ccc12ddc00..000000000000 --- a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt +++ /dev/null @@ -1,42 +0,0 @@ -Samsung Exynos5433 TM2(E) audio complex with WM5110 codec
-Required properties:
- compatible : "samsung,tm2-audio"
- model : the user-visible name of this sound complex
- audio-codec : the first entry should be phandle of the wm5110 audio
codec node, as described in ../mfd/arizona.txt;
the second entry should be phandle of the HDMI
transmitter node
- i2s-controller : the list of phandle and argument tuples pointing to
I2S controllers, the first entry should be I2S0 and
the second one I2S1
- audio-amplifier : the phandle of the MAX98504 amplifier
- 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
WM5110's and MAX98504's pins and the jacks on the
board: HP, SPK, Main Mic, Sub Mic, Third Mic,
Headset Mic
- mic-bias-gpios : GPIO pin that enables the Main Mic bias regulator
-Example:
-sound {
- compatible = "samsung,tm2-audio";
- audio-codec = <&wm5110>, <&hdmi>;
- i2s-controller = <&i2s0 0>, <&i2s1 0>;
- audio-amplifier = <&max98504>;
- mic-bias-gpios = <&gpr3 2 0>;
- model = "wm5110";
- samsung,audio-routing =
"HP", "HPOUT1L",
"HP", "HPOUT1R",
"SPK", "SPKOUT",
"SPKOUT", "HPOUT2L",
"SPKOUT", "HPOUT2R",
"Main Mic", "MICBIAS2",
"IN1R", "Main Mic";
-}; diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml new file mode 100644 index 000000000000..377f8cbe17b8 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml @@ -0,0 +1,83 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: https://protect2.fireeye.com/url?k=ccb9abe11b8a2745.ccb820ae-a91cd712f01d248... +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Samsung Exynos SoC Exynos5433 TM2(E) audio complex with WM5110 codec
+maintainers:
- Krzysztof Kozlowski krzk@kernel.org
- Sylwester Nawrocki s.nawrocki@samsung.com
+properties:
- compatible:
- const: samsung,tm2-audio
- model:
- maxItems: 1
$ref to string, then maxItems are not needed. Add description (copy-paste).
Hi Krzysztof,
You're right, model is not a standard property.
- audio-codec:
- allOf:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- description: |
phandle of the wm5110 audio codec node,
as described in ../mfd/arizona.txt;
- description: phandle of the HDMI transmitter node.
- i2s-controller:
- allOf:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- description: phandle of the I2S0.
- description: phandle of the I2S1.
- audio-amplifier:
Can you order the nodes here and in required section by name (except compatible which should be first)?
Current order is already well-established across bindings (even example). I think that sorted properties are undesired with that.
Best regards, Maciej Falkowski
Best regards, Krzysztof
On Thu, Sep 26, 2019 at 01:49:09PM +0200, Maciej Falkowski wrote:
On 9/24/19 5:20 PM, Krzysztof Kozlowski wrote:
On Tue, Sep 24, 2019 at 05:01:46PM +0200, Marek Szyprowski wrote:
From: Maciej Falkowski m.falkowski@samsung.com
Convert Samsung Exynos5433 TM2(E) audio complex with WM5110 codec to newer dt-schema format.
Signed-off-by: Maciej Falkowski m.falkowski@samsung.com Signed-off-by: Marek Szyprowski m.szyprowski@samsung.com
.../bindings/sound/samsung,tm2-audio.txt | 42 ---------- .../bindings/sound/samsung,tm2-audio.yaml | 83 +++++++++++++++++++ 2 files changed, 83 insertions(+), 42 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt create mode 100644 Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml
diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt deleted file mode 100644 index f5ccc12ddc00..000000000000 --- a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt +++ /dev/null @@ -1,42 +0,0 @@ -Samsung Exynos5433 TM2(E) audio complex with WM5110 codec
-Required properties:
- compatible : "samsung,tm2-audio"
- model : the user-visible name of this sound complex
- audio-codec : the first entry should be phandle of the wm5110 audio
codec node, as described in ../mfd/arizona.txt;
the second entry should be phandle of the HDMI
transmitter node
- i2s-controller : the list of phandle and argument tuples pointing to
I2S controllers, the first entry should be I2S0 and
the second one I2S1
- audio-amplifier : the phandle of the MAX98504 amplifier
- 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
WM5110's and MAX98504's pins and the jacks on the
board: HP, SPK, Main Mic, Sub Mic, Third Mic,
Headset Mic
- mic-bias-gpios : GPIO pin that enables the Main Mic bias regulator
-Example:
-sound {
- compatible = "samsung,tm2-audio";
- audio-codec = <&wm5110>, <&hdmi>;
- i2s-controller = <&i2s0 0>, <&i2s1 0>;
- audio-amplifier = <&max98504>;
- mic-bias-gpios = <&gpr3 2 0>;
- model = "wm5110";
- samsung,audio-routing =
"HP", "HPOUT1L",
"HP", "HPOUT1R",
"SPK", "SPKOUT",
"SPKOUT", "HPOUT2L",
"SPKOUT", "HPOUT2R",
"Main Mic", "MICBIAS2",
"IN1R", "Main Mic";
-}; diff --git a/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml new file mode 100644 index 000000000000..377f8cbe17b8 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/samsung,tm2-audio.yaml @@ -0,0 +1,83 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: https://protect2.fireeye.com/url?k=ccb9abe11b8a2745.ccb820ae-a91cd712f01d248... +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Samsung Exynos SoC Exynos5433 TM2(E) audio complex with WM5110 codec
+maintainers:
- Krzysztof Kozlowski krzk@kernel.org
- Sylwester Nawrocki s.nawrocki@samsung.com
+properties:
- compatible:
- const: samsung,tm2-audio
- model:
- maxItems: 1
$ref to string, then maxItems are not needed. Add description (copy-paste).
Hi Krzysztof,
You're right, model is not a standard property.
- audio-codec:
- allOf:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- description: |
phandle of the wm5110 audio codec node,
as described in ../mfd/arizona.txt;
- description: phandle of the HDMI transmitter node.
- i2s-controller:
- allOf:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- description: phandle of the I2S0.
- description: phandle of the I2S1.
- audio-amplifier:
Can you order the nodes here and in required section by name (except compatible which should be first)?
Current order is already well-established across bindings (even example). I think that sorted properties are undesired with that.
OK, good point, so leave the standard properties in order matching example-bindings. However order the reset because "audio-codec", then "i2s-controler" and then again "audio-...". So bring some order here.
Best regards, Krzysztof
participants (3)
-
Krzysztof Kozlowski
-
Maciej Falkowski
-
Marek Szyprowski