diff options
author | Elinor Montmasson <elinor.montmasson@savoirfairelinux.com> | 2024-08-20 13:28:27 +0200 |
---|---|---|
committer | Shawn Guo <shawnguo@kernel.org> | 2024-09-01 09:15:50 +0800 |
commit | d469b771afe1c02643b24824946a53c493ef1731 (patch) | |
tree | 40bc6e3e1e2b44dfee2c3f14b6d3f4d125cf5682 /arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi | |
parent | 0353e9809eb65cdf227821e6e65a6f0676271242 (diff) |
ARM: dts: imx6: update spdif sound card node properties
The merge of imx-spdif driver into fsl-asoc-card brought
new DT properties that can be used with the "fsl,imx-audio-spdif"
compatible:
* The "spdif-controller" property from imx-spdif is named "audio-cpu"
in fsl-asoc-card.
* fsl-asoc-card uses codecs explicitly declared in DT
with "audio-codec".
With an S/PDIF, codec drivers spdif_transmitter and
spdif_receiver should be used.
Driver imx-spdif used instead the dummy codec and a pair of
boolean properties, "spdif-in" and "spdif-out".
While backward compatibility is kept to support properties
"spdif-controller", "spdif-in" and "spdif-out", using new properties has
several benefits:
* "audio-cpu" and "audio-codec" are more generic names reflecting
that the fsl-asoc-card driver supports multiple hardware.
They are properties already used by devices using the
fsl-asoc-card driver.
They are also similar to properties of simple-card: "cpu" and "codec".
* "spdif-in" and "spdif-out" imply the use of the dummy codec in the
driver. However, there are already two codec drivers for the S/PDIF,
spdif_transmitter and spdif_receiver.
It is better to declare S/PDIF Tx and Rx devices in a DT, and then
reference them with "audio-codec" than using the dummy codec.
For those reasons, this commit updates in-tree DTs to use the new
properties:
* Rename "spdif-controller" property to "audio-cpu".
* Declare S/PDIF transmitter and/or receiver devices, and use them with
the "audio-codec" property instead of "spdif-out" and/or "spdif-in".
These modifications were tested only on an imx8mn-evk board.
Note that out-of-tree and old DTs are still supported.
Signed-off-by: Elinor Montmasson <elinor.montmasson@savoirfairelinux.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Diffstat (limited to 'arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi')
-rw-r--r-- | arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi b/arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi index 38abb6b50f6c..7130b9c3b3aa 100644 --- a/arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi +++ b/arch/arm/boot/dts/nxp/imx/imx6qdl-wandboard.dtsi @@ -26,11 +26,16 @@ mux-ext-port = <3>; }; + spdif_out: spdif-out { + compatible = "linux,spdif-dit"; + #sound-dai-cells = <0>; + }; + sound-spdif { compatible = "fsl,imx-audio-spdif"; model = "imx-spdif"; - spdif-controller = <&spdif>; - spdif-out; + audio-cpu = <&spdif>; + audio-codec = <&spdif_out>; }; reg_1p5v: regulator-1p5v { |