mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 08:43:31 +00:00
ASoC: machine: update documentation
1. Added clocking details. 2. Updated ways to register the dai's 3. Bit more detail about card registration details. Signed-off-by: anish kumar <yesanishhere@gmail.com> Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com> Link: https://patch.msgid.link/20241109192231.11623-1-yesanishhere@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
125d0f698a
commit
e90dbd3839
1 changed files with 26 additions and 0 deletions
|
@ -71,6 +71,18 @@ struct snd_soc_dai_link is used to set up each DAI in your machine. e.g.
|
||||||
.ops = &corgi_ops,
|
.ops = &corgi_ops,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
In the above struct, dai’s are registered using names but you can pass
|
||||||
|
either dai name or device tree node but not both. Also, names used here
|
||||||
|
for cpu/codec/platform dais should be globally unique.
|
||||||
|
|
||||||
|
Additionaly below example macro can be used to register cpu, codec and
|
||||||
|
platform dai::
|
||||||
|
|
||||||
|
SND_SOC_DAILINK_DEFS(wm2200_cpu_dsp,
|
||||||
|
DAILINK_COMP_ARRAY(COMP_CPU("samsung-i2s.0")),
|
||||||
|
DAILINK_COMP_ARRAY(COMP_CODEC("spi0.0", "wm0010-sdi1")),
|
||||||
|
DAILINK_COMP_ARRAY(COMP_PLATFORM("samsung-i2s.0")));
|
||||||
|
|
||||||
struct snd_soc_card then sets up the machine with its DAIs. e.g.
|
struct snd_soc_card then sets up the machine with its DAIs. e.g.
|
||||||
::
|
::
|
||||||
|
|
||||||
|
@ -81,6 +93,10 @@ struct snd_soc_card then sets up the machine with its DAIs. e.g.
|
||||||
.num_links = 1,
|
.num_links = 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Following this, ``devm_snd_soc_register_card`` can be used to register
|
||||||
|
the sound card. During the registration, the individual components
|
||||||
|
such as the codec, CPU, and platform are probed. If all these components
|
||||||
|
are successfully probed, the sound card gets registered.
|
||||||
|
|
||||||
Machine Power Map
|
Machine Power Map
|
||||||
-----------------
|
-----------------
|
||||||
|
@ -95,3 +111,13 @@ Machine Controls
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
Machine specific audio mixer controls can be added in the DAI init function.
|
Machine specific audio mixer controls can be added in the DAI init function.
|
||||||
|
|
||||||
|
|
||||||
|
Clocking Controls
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
As previously noted, clock configuration is handled within the machine driver.
|
||||||
|
For details on the clock APIs that the machine driver can utilize for
|
||||||
|
setup, please refer to Documentation/sound/soc/clocking.rst. However, the
|
||||||
|
callback needs to be registered by the CPU/Codec/Platform drivers to configure
|
||||||
|
the clocks that is needed for the corresponding device operation.
|
||||||
|
|
Loading…
Add table
Reference in a new issue