Skip to content

Commit

Permalink
ASoC: docs: Update the Overview document
Browse files Browse the repository at this point in the history
Update the ASoC overview to bring it up to date with the current code base
and include multi-component.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
  • Loading branch information
Liam Girdwood authored and Mark Brown committed Jan 7, 2014
1 parent 6ce4eac commit d9e9ff5
Showing 1 changed file with 18 additions and 9 deletions.
27 changes: 18 additions & 9 deletions Documentation/sound/alsa/soc/overview.txt
Original file line number Diff line number Diff line change
Expand Up @@ -49,18 +49,23 @@ features :-
* Machine specific controls: Allow machines to add controls to the sound card
(e.g. volume control for speaker amplifier).

To achieve all this, ASoC basically splits an embedded audio system into 3
components :-
To achieve all this, ASoC basically splits an embedded audio system into
multiple re-usable component drivers :-

* Codec driver: The codec driver is platform independent and contains audio
controls, audio interface capabilities, codec DAPM definition and codec IO
functions.
* Codec class drivers: The codec class driver is platform independent and
contains audio controls, audio interface capabilities, codec DAPM
definition and codec IO functions. This class extends to BT, FM and MODEM
ICs if required. Codec class drivers should be generic code that can run
on any architecture and machine.

* Platform driver: The platform driver contains the audio DMA engine and audio
interface drivers (e.g. I2S, AC97, PCM) for that platform.
* Platform class drivers: The platform class driver includes the audio DMA
engine driver, digital audio interface (DAI) drivers (e.g. I2S, AC97, PCM)
and any audio DSP drivers for that platform.

* Machine driver: The machine driver handles any machine specific controls and
audio events (e.g. turning on an amp at start of playback).
* Machine class driver: The machine driver class acts as the glue that
decribes and binds the other component drivers together to form an ALSA
"sound card device". It handles any machine specific controls and
machine level audio events (e.g. turning on an amp at start of playback).


Documentation
Expand All @@ -84,3 +89,7 @@ machine.txt: Machine driver internals.
pop_clicks.txt: How to minimise audio artifacts.

clocking.txt: ASoC clocking for best power performance.

jack.txt: ASoC jack detection.

DPCM.txt: Dynamic PCM - Describes DPCM with DSP examples.

0 comments on commit d9e9ff5

Please sign in to comment.