Skip to content

Commit

Permalink
ASoC: doc: ReSTize codec_to_codec.txt
Browse files Browse the repository at this point in the history
Yet another simple conversion from a plain text file.
Renamed to codec-to-codec.rst to align with others.

Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Takashi Iwai committed Nov 11, 2016
1 parent 76228a2 commit c6ab9e5
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 37 deletions.
Original file line number Diff line number Diff line change
@@ -1,37 +1,41 @@
==============================================
Creating codec to codec dai link for ALSA dapm
===================================================
==============================================

Mostly the flow of audio is always from CPU to codec so your system
will look as below:
::

--------- ---------
| | dai | |
CPU -------> codec
| | | |
--------- ---------
--------- ---------
| | dai | |
CPU -------> codec
| | | |
--------- ---------

In case your system looks as below:
---------
| |
codec-2
| |
---------
|
dai-2
|
---------- ---------
| | dai-1 | |
CPU -------> codec-1
| | | |
---------- ---------
|
dai-3
|
---------
| |
codec-3
| |
---------
::

---------
| |
codec-2
| |
---------
|
dai-2
|
---------- ---------
| | dai-1 | |
CPU -------> codec-1
| | | |
---------- ---------
|
dai-3
|
---------
| |
codec-3
| |
---------

Suppose codec-2 is a bluetooth chip and codec-3 is connected to
a speaker and you have a below scenario:
Expand All @@ -42,20 +46,21 @@ connection should be used.

Your dai_link should appear as below in your machine
file:
::

/*
* this pcm stream only supports 24 bit, 2 channel and
* 48k sampling rate.
*/
static const struct snd_soc_pcm_stream dsp_codec_params = {
/*
* this pcm stream only supports 24 bit, 2 channel and
* 48k sampling rate.
*/
static const struct snd_soc_pcm_stream dsp_codec_params = {
.formats = SNDRV_PCM_FMTBIT_S24_LE,
.rate_min = 48000,
.rate_max = 48000,
.channels_min = 2,
.channels_max = 2,
};
};

{
{
.name = "CPU-DSP",
.stream_name = "CPU-DSP",
.cpu_dai_name = "samsung-i2s.0",
Expand All @@ -66,8 +71,8 @@ static const struct snd_soc_pcm_stream dsp_codec_params = {
| SND_SOC_DAIFMT_CBM_CFM,
.ignore_suspend = 1,
.params = &dsp_codec_params,
},
{
},
{
.name = "DSP-CODEC",
.stream_name = "DSP-CODEC",
.cpu_dai_name = "wm0010-sdi2",
Expand All @@ -77,7 +82,7 @@ static const struct snd_soc_pcm_stream dsp_codec_params = {
| SND_SOC_DAIFMT_CBM_CFM,
.ignore_suspend = 1,
.params = &dsp_codec_params,
},
},

Above code snippet is motivated from sound/soc/samsung/speyside.c.

Expand Down
1 change: 1 addition & 0 deletions Documentation/sound/soc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,4 @@ The documentation is spilt into the following sections:-
clocking
jack
dpcm
codec-to-codec

0 comments on commit c6ab9e5

Please sign in to comment.