mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-21 06:50:25 +00:00
ASoC: dt-bindings: fsl-asoc-card: convert to YAML
Convert the fsl-asoc-card binding to YAML. When testing dtbs_check, found below compatible strings are not listed in document: fsl,imx-sgtl5000 fsl,imx53-cpuvo-sgtl5000 fsl,imx51-babbage-sgtl5000 fsl,imx53-m53evk-sgtl5000 fsl,imx53-qsb-sgtl5000 fsl,imx53-voipac-sgtl5000 fsl,imx6-armadeus-sgtl5000 fsl,imx6-rex-sgtl5000 fsl,imx6-sabreauto-cs42888 fsl,imx6-wandboard-sgtl5000 fsl,imx6dl-nit6xlite-sgtl5000 fsl,imx6q-ba16-sgtl5000 fsl,imx6q-nitrogen6_max-sgtl5000 fsl,imx6q-nitrogen6_som2-sgtl5000 fsl,imx6q-nitrogen6x-sgtl5000 fsl,imx6q-sabrelite-sgtl5000 fsl,imx6q-sabresd-wm8962 fsl,imx6q-udoo-ac97 fsl,imx6q-ventana-sgtl5000 fsl,imx6sl-evk-wm8962 fsl,imx6sx-sdb-mqs fsl,imx6sx-sdb-wm8962 fsl,imx7d-evk-wm8960 karo,tx53-audio-sgtl5000 tq,imx53-mba53-sgtl5000 So add them in yaml file to pass the test. Also correct the 'dai-format' to 'format' in document. For 'audio-routing', the items are not listed. Because this fsl-asoc-card is generic driver, which supports several codecs, if list all the items, there will be a long list. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://msgid.link/r/1711976056-19884-3-git-send-email-shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
91ebd32eee
commit
4189b54220
2 changed files with 195 additions and 117 deletions
|
@ -1,117 +0,0 @@
|
||||||
Freescale Generic ASoC Sound Card with ASRC support
|
|
||||||
|
|
||||||
The Freescale Generic ASoC Sound Card can be used, ideally, for all Freescale
|
|
||||||
SoCs connecting with external CODECs.
|
|
||||||
|
|
||||||
The idea of this generic sound card is a bit like ASoC Simple Card. However,
|
|
||||||
for Freescale SoCs (especially those released in recent years), most of them
|
|
||||||
have ASRC (Documentation/devicetree/bindings/sound/fsl,asrc.txt) inside. And
|
|
||||||
this is a specific feature that might be painstakingly controlled and merged
|
|
||||||
into the Simple Card.
|
|
||||||
|
|
||||||
So having this generic sound card allows all Freescale SoC users to benefit
|
|
||||||
from the simplification of a new card support and the capability of the wide
|
|
||||||
sample rates support through ASRC.
|
|
||||||
|
|
||||||
Note: The card is initially designed for those sound cards who use AC'97, I2S
|
|
||||||
and PCM DAI formats. However, it'll be also possible to support those non
|
|
||||||
AC'97/I2S/PCM type sound cards, such as S/PDIF audio and HDMI audio, as
|
|
||||||
long as the driver has been properly upgraded.
|
|
||||||
|
|
||||||
|
|
||||||
The compatible list for this generic sound card currently:
|
|
||||||
"fsl,imx-audio-ac97"
|
|
||||||
|
|
||||||
"fsl,imx-audio-cs42888"
|
|
||||||
|
|
||||||
"fsl,imx-audio-cs427x"
|
|
||||||
(compatible with CS4271 and CS4272)
|
|
||||||
|
|
||||||
"fsl,imx-audio-wm8962"
|
|
||||||
|
|
||||||
"fsl,imx-audio-sgtl5000"
|
|
||||||
(compatible with Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt)
|
|
||||||
|
|
||||||
"fsl,imx-audio-wm8960"
|
|
||||||
|
|
||||||
"fsl,imx-audio-mqs"
|
|
||||||
|
|
||||||
"fsl,imx-audio-wm8524"
|
|
||||||
|
|
||||||
"fsl,imx-audio-tlv320aic32x4"
|
|
||||||
|
|
||||||
"fsl,imx-audio-tlv320aic31xx"
|
|
||||||
|
|
||||||
"fsl,imx-audio-si476x"
|
|
||||||
|
|
||||||
"fsl,imx-audio-wm8958"
|
|
||||||
|
|
||||||
"fsl,imx-audio-nau8822"
|
|
||||||
|
|
||||||
Required properties:
|
|
||||||
|
|
||||||
- compatible : Contains one of entries in the compatible list.
|
|
||||||
|
|
||||||
- model : The user-visible name of this sound complex
|
|
||||||
|
|
||||||
- audio-cpu : The phandle of an CPU DAI controller
|
|
||||||
|
|
||||||
- audio-codec : The phandle of an audio codec
|
|
||||||
|
|
||||||
Optional properties:
|
|
||||||
|
|
||||||
- audio-asrc : The phandle of ASRC. It can be absent if there's no
|
|
||||||
need to add ASRC support via DPCM.
|
|
||||||
|
|
||||||
- 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. There're a few pre-designed board connectors:
|
|
||||||
* Line Out Jack
|
|
||||||
* Line In Jack
|
|
||||||
* Headphone Jack
|
|
||||||
* Mic Jack
|
|
||||||
* Ext Spk
|
|
||||||
* AMIC (stands for Analog Microphone Jack)
|
|
||||||
* DMIC (stands for Digital Microphone Jack)
|
|
||||||
|
|
||||||
Note: The "Mic Jack" and "AMIC" are redundant while
|
|
||||||
coexisting in order to support the old bindings
|
|
||||||
of wm8962 and sgtl5000.
|
|
||||||
|
|
||||||
- hp-det-gpio : The GPIO that detect headphones are plugged in
|
|
||||||
- mic-det-gpio : The GPIO that detect microphones are plugged in
|
|
||||||
- bitclock-master : Indicates dai-link bit clock master; for details see simple-card.yaml.
|
|
||||||
- frame-master : Indicates dai-link frame master; for details see simple-card.yaml.
|
|
||||||
- dai-format : audio format, for details see simple-card.yaml.
|
|
||||||
- frame-inversion : dai-link uses frame clock inversion, for details see simple-card.yaml.
|
|
||||||
- bitclock-inversion : dai-link uses bit clock inversion, for details see simple-card.yaml.
|
|
||||||
- mclk-id : main clock id, specific for each card configuration.
|
|
||||||
|
|
||||||
Optional unless SSI is selected as a CPU DAI:
|
|
||||||
|
|
||||||
- mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)
|
|
||||||
|
|
||||||
- mux-ext-port : The external port of the i.MX audio muxer
|
|
||||||
|
|
||||||
Example:
|
|
||||||
sound-cs42888 {
|
|
||||||
compatible = "fsl,imx-audio-cs42888";
|
|
||||||
model = "cs42888-audio";
|
|
||||||
audio-cpu = <&esai>;
|
|
||||||
audio-asrc = <&asrc>;
|
|
||||||
audio-codec = <&cs42888>;
|
|
||||||
audio-routing =
|
|
||||||
"Line Out Jack", "AOUT1L",
|
|
||||||
"Line Out Jack", "AOUT1R",
|
|
||||||
"Line Out Jack", "AOUT2L",
|
|
||||||
"Line Out Jack", "AOUT2R",
|
|
||||||
"Line Out Jack", "AOUT3L",
|
|
||||||
"Line Out Jack", "AOUT3R",
|
|
||||||
"Line Out Jack", "AOUT4L",
|
|
||||||
"Line Out Jack", "AOUT4R",
|
|
||||||
"AIN1L", "Line In Jack",
|
|
||||||
"AIN1R", "Line In Jack",
|
|
||||||
"AIN2L", "Line In Jack",
|
|
||||||
"AIN2R", "Line In Jack";
|
|
||||||
};
|
|
195
Documentation/devicetree/bindings/sound/fsl-asoc-card.yaml
Normal file
195
Documentation/devicetree/bindings/sound/fsl-asoc-card.yaml
Normal file
|
@ -0,0 +1,195 @@
|
||||||
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||||
|
%YAML 1.2
|
||||||
|
---
|
||||||
|
$id: http://devicetree.org/schemas/sound/fsl-asoc-card.yaml#
|
||||||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||||
|
|
||||||
|
title: Freescale Generic ASoC Sound Card with ASRC support
|
||||||
|
|
||||||
|
description:
|
||||||
|
The Freescale Generic ASoC Sound Card can be used, ideally,
|
||||||
|
for all Freescale SoCs connecting with external CODECs.
|
||||||
|
|
||||||
|
The idea of this generic sound card is a bit like ASoC Simple Card.
|
||||||
|
However, for Freescale SoCs (especially those released in recent years),
|
||||||
|
most of them have ASRC inside. And this is a specific feature that might
|
||||||
|
be painstakingly controlled and merged into the Simple Card.
|
||||||
|
|
||||||
|
So having this generic sound card allows all Freescale SoC users to
|
||||||
|
benefit from the simplification of a new card support and the capability
|
||||||
|
of the wide sample rates support through ASRC.
|
||||||
|
|
||||||
|
Note, The card is initially designed for those sound cards who use AC'97, I2S
|
||||||
|
and PCM DAI formats. However, it'll be also possible to support those non
|
||||||
|
AC'97/I2S/PCM type sound cards, such as S/PDIF audio and HDMI audio, as
|
||||||
|
long as the driver has been properly upgraded.
|
||||||
|
|
||||||
|
maintainers:
|
||||||
|
- Shengjiu Wang <shengjiu.wang@nxp.com>
|
||||||
|
|
||||||
|
properties:
|
||||||
|
compatible:
|
||||||
|
oneOf:
|
||||||
|
- items:
|
||||||
|
- enum:
|
||||||
|
- fsl,imx-sgtl5000
|
||||||
|
- fsl,imx53-cpuvo-sgtl5000
|
||||||
|
- fsl,imx51-babbage-sgtl5000
|
||||||
|
- fsl,imx53-m53evk-sgtl5000
|
||||||
|
- fsl,imx53-qsb-sgtl5000
|
||||||
|
- fsl,imx53-voipac-sgtl5000
|
||||||
|
- fsl,imx6-armadeus-sgtl5000
|
||||||
|
- fsl,imx6-rex-sgtl5000
|
||||||
|
- fsl,imx6-sabreauto-cs42888
|
||||||
|
- fsl,imx6-wandboard-sgtl5000
|
||||||
|
- fsl,imx6dl-nit6xlite-sgtl5000
|
||||||
|
- fsl,imx6q-ba16-sgtl5000
|
||||||
|
- fsl,imx6q-nitrogen6_max-sgtl5000
|
||||||
|
- fsl,imx6q-nitrogen6_som2-sgtl5000
|
||||||
|
- fsl,imx6q-nitrogen6x-sgtl5000
|
||||||
|
- fsl,imx6q-sabrelite-sgtl5000
|
||||||
|
- fsl,imx6q-sabresd-wm8962
|
||||||
|
- fsl,imx6q-udoo-ac97
|
||||||
|
- fsl,imx6q-ventana-sgtl5000
|
||||||
|
- fsl,imx6sl-evk-wm8962
|
||||||
|
- fsl,imx6sx-sdb-mqs
|
||||||
|
- fsl,imx6sx-sdb-wm8962
|
||||||
|
- fsl,imx7d-evk-wm8960
|
||||||
|
- karo,tx53-audio-sgtl5000
|
||||||
|
- tq,imx53-mba53-sgtl5000
|
||||||
|
- enum:
|
||||||
|
- fsl,imx-audio-ac97
|
||||||
|
- fsl,imx-audio-cs42888
|
||||||
|
- fsl,imx-audio-mqs
|
||||||
|
- fsl,imx-audio-sgtl5000
|
||||||
|
- fsl,imx-audio-wm8960
|
||||||
|
- fsl,imx-audio-wm8962
|
||||||
|
- items:
|
||||||
|
- enum:
|
||||||
|
- fsl,imx-audio-ac97
|
||||||
|
- fsl,imx-audio-cs42888
|
||||||
|
- fsl,imx-audio-cs427x
|
||||||
|
- fsl,imx-audio-mqs
|
||||||
|
- fsl,imx-audio-nau8822
|
||||||
|
- fsl,imx-audio-sgtl5000
|
||||||
|
- fsl,imx-audio-si476x
|
||||||
|
- fsl,imx-audio-tlv320aic31xx
|
||||||
|
- fsl,imx-audio-tlv320aic32x4
|
||||||
|
- fsl,imx-audio-wm8524
|
||||||
|
- fsl,imx-audio-wm8960
|
||||||
|
- fsl,imx-audio-wm8962
|
||||||
|
- fsl,imx-audio-wm8958
|
||||||
|
|
||||||
|
model:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/string
|
||||||
|
description: The user-visible name of this sound complex
|
||||||
|
|
||||||
|
audio-asrc:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/phandle
|
||||||
|
description:
|
||||||
|
The phandle of ASRC. It can be absent if there's no
|
||||||
|
need to add ASRC support via DPCM.
|
||||||
|
|
||||||
|
audio-codec:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/phandle
|
||||||
|
description: The phandle of an audio codec
|
||||||
|
|
||||||
|
audio-cpu:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/phandle
|
||||||
|
description: The phandle of an CPU DAI controller
|
||||||
|
|
||||||
|
audio-routing:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/non-unique-string-array
|
||||||
|
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. There're a few pre-designed board
|
||||||
|
connectors. "AMIC" stands for Analog Microphone Jack.
|
||||||
|
"DMIC" stands for Digital Microphone Jack. The "Mic Jack" and "AMIC"
|
||||||
|
are redundant while coexisting in order to support the old bindings
|
||||||
|
of wm8962 and sgtl5000.
|
||||||
|
|
||||||
|
hp-det-gpio:
|
||||||
|
deprecated: true
|
||||||
|
maxItems: 1
|
||||||
|
description: The GPIO that detect headphones are plugged in
|
||||||
|
|
||||||
|
hp-det-gpios:
|
||||||
|
maxItems: 1
|
||||||
|
description: The GPIO that detect headphones are plugged in
|
||||||
|
|
||||||
|
mic-det-gpio:
|
||||||
|
deprecated: true
|
||||||
|
maxItems: 1
|
||||||
|
description: The GPIO that detect microphones are plugged in
|
||||||
|
|
||||||
|
mic-det-gpios:
|
||||||
|
maxItems: 1
|
||||||
|
description: The GPIO that detect microphones are plugged in
|
||||||
|
|
||||||
|
bitclock-master:
|
||||||
|
$ref: simple-card.yaml#/definitions/bitclock-master
|
||||||
|
description: Indicates dai-link bit clock master.
|
||||||
|
|
||||||
|
frame-master:
|
||||||
|
$ref: simple-card.yaml#/definitions/frame-master
|
||||||
|
description: Indicates dai-link frame master.
|
||||||
|
|
||||||
|
format:
|
||||||
|
$ref: simple-card.yaml#/definitions/format
|
||||||
|
description: audio format.
|
||||||
|
|
||||||
|
frame-inversion:
|
||||||
|
$ref: simple-card.yaml#/definitions/frame-inversion
|
||||||
|
description: dai-link uses frame clock inversion.
|
||||||
|
|
||||||
|
bitclock-inversion:
|
||||||
|
$ref: simple-card.yaml#/definitions/bitclock-inversion
|
||||||
|
description: dai-link uses bit clock inversion.
|
||||||
|
|
||||||
|
mclk-id:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||||||
|
description: main clock id, specific for each card configuration.
|
||||||
|
|
||||||
|
mux-int-port:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||||||
|
enum: [1, 2, 7]
|
||||||
|
description: The internal port of the i.MX audio muxer (AUDMUX)
|
||||||
|
|
||||||
|
mux-ext-port:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||||||
|
enum: [3, 4, 5, 6]
|
||||||
|
description: The external port of the i.MX audio muxer
|
||||||
|
|
||||||
|
ssi-controller:
|
||||||
|
$ref: /schemas/types.yaml#/definitions/phandle
|
||||||
|
description: The phandle of an CPU DAI controller
|
||||||
|
|
||||||
|
required:
|
||||||
|
- compatible
|
||||||
|
- model
|
||||||
|
|
||||||
|
unevaluatedProperties: false
|
||||||
|
|
||||||
|
examples:
|
||||||
|
- |
|
||||||
|
sound-cs42888 {
|
||||||
|
compatible = "fsl,imx-audio-cs42888";
|
||||||
|
model = "cs42888-audio";
|
||||||
|
audio-cpu = <&esai>;
|
||||||
|
audio-asrc = <&asrc>;
|
||||||
|
audio-codec = <&cs42888>;
|
||||||
|
audio-routing =
|
||||||
|
"Line Out Jack", "AOUT1L",
|
||||||
|
"Line Out Jack", "AOUT1R",
|
||||||
|
"Line Out Jack", "AOUT2L",
|
||||||
|
"Line Out Jack", "AOUT2R",
|
||||||
|
"Line Out Jack", "AOUT3L",
|
||||||
|
"Line Out Jack", "AOUT3R",
|
||||||
|
"Line Out Jack", "AOUT4L",
|
||||||
|
"Line Out Jack", "AOUT4R",
|
||||||
|
"AIN1L", "Line In Jack",
|
||||||
|
"AIN1R", "Line In Jack",
|
||||||
|
"AIN2L", "Line In Jack",
|
||||||
|
"AIN2R", "Line In Jack";
|
||||||
|
};
|
Loading…
Add table
Reference in a new issue