When navigating the Linux ASoC files, which ones pertain to the following categories:
- Platform Driver: ? (somewhere in sound/soc/ ?)
- Machine Driver: ? (somewhere in sound/soc/ ?)
- Codec Driver: sound/soc/codecs/partname.c
From kernel documentation: https://www.kernel.org/doc/Documentation/sound/alsa/soc/overview.txt
To achieve all this, ASoC basically splits an embedded audio system into 3 components :-
Codec driver: The codec driver is platform independent and contains audio controls, audio interface capabilities, codec DAPM definition and codec IO functions.
Platform driver: The platform driver contains the audio DMA engine and audio interface drivers (e.g. I2S, AC97, PCM) 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).
Also, where are the launching points for each of these pieces? (May be self explanatory when I find which files they are in)