ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
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.
|
|
|
|
|
2015-09-19 00:00:25 +00:00
|
|
|
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.
|
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
|
|
|
|
|
|
|
|
The compatible list for this generic sound card currently:
|
2015-09-19 00:00:25 +00:00
|
|
|
"fsl,imx-audio-ac97"
|
|
|
|
|
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
"fsl,imx-audio-cs42888"
|
|
|
|
|
2016-01-29 11:01:00 +00:00
|
|
|
"fsl,imx-audio-cs427x"
|
|
|
|
(compatible with CS4271 and CS4272)
|
|
|
|
|
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
"fsl,imx-audio-wm8962"
|
|
|
|
(compatible with Documentation/devicetree/bindings/sound/imx-audio-wm8962.txt)
|
|
|
|
|
|
|
|
"fsl,imx-audio-sgtl5000"
|
|
|
|
(compatible with Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt)
|
|
|
|
|
2016-01-15 05:33:08 +00:00
|
|
|
"fsl,imx-audio-wm8960"
|
|
|
|
|
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
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
|
|
|
|
|
|
|
|
- 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
|
2016-05-21 11:39:54 +00:00
|
|
|
coexisting in order to support the old bindings
|
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
of wm8962 and sgtl5000.
|
|
|
|
|
|
|
|
Optional properties:
|
|
|
|
|
|
|
|
- audio-asrc : The phandle of ASRC. It can be absent if there's no
|
|
|
|
need to add ASRC support via DPCM.
|
|
|
|
|
2016-01-29 11:01:00 +00:00
|
|
|
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
|
|
|
|
|
ASoC: fsl: Add Freescale Generic ASoC Sound Card with ASRC support
The Freescale Generic ASoC Sound Card is a general ASoC DAI Link driver that
can be used, ideally, for all Freescale CPU DAI drivers and 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 driver.
So having this driver will allow all Freescale SoC users to benefit from the
simplification to support a new card and the capability of wide sample rates
support through ASRC.
The driver is initially designed for sound card using I2S or PCM DAI formats.
However, it's also possible to merge those non-I2S/PCM type sound cards, such
as S/PDIF audio and HDMI audio, into this card as long as the merge will not
break the original function and as long as there is something redundant that
can be abstracted along with I2S type sound cards.
As an initial version, it only supports three cards that I can test:
imx-audio-cs42888, a new card that links ESAI with CS42888 CODEC
imx-audio-sgtl5000, just like the old imx-sgtl5000.c driver
imx-audio-wm8962, just like the old imx-wm8962.c driver
The driver is also compatible with the old Device Tree bindings of WM8962 and
SGTL5000. So we may consider to remove those two drivers after this driver is
totally enabled. (It needs to be added into defconfig)
Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-30 11:27:38 +00:00
|
|
|
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";
|
|
|
|
};
|