Lines Matching +full:codec +full:- +full:driver
2 ASoC Codec Class Driver
5 The codec class driver is generic and hardware independent code that configures
6 the codec, FM, MODEM, BT or external DSP to provide audio capture and playback.
11 Each codec class driver *must* provide the following features:-
13 1. Codec DAI and PCM configuration
14 2. Codec control IO - using RegMap API
16 4. Codec audio operations
20 Optionally, codec drivers can also provide:-
24 Its probably best to use this guide in conjunction with the existing codec
25 driver code in sound/soc/codecs/
27 ASoC Codec driver breakdown
30 Codec DAI and PCM configuration
31 -------------------------------
32 Each codec driver must have a struct snd_soc_dai_driver to define its DAI and
34 registered with the core by your machine driver.
49 .name = "wm8731-hifi",
67 Codec control IO
68 ----------------
69 The codec can usually be controlled via an I2C or SPI style interface
70 (AC97 combines control with data in the DAI). The codec driver should use the
71 Regmap API for all codec IO. Please see include/linux/regmap.h and existing
72 codec drivers for example regmap usage.
76 -------------------------
77 All the codec mixers and audio controls can be defined using the convenience
83 Defines a single control as follows:-
87 reg = codec register
92 Other macros include:-
107 Defines an single enumerated control as follows:-
120 Codec Audio Operations
121 ----------------------
122 The codec driver also supports the following ALSA PCM operations:-
134 Please refer to the ALSA driver PCM documentation for details.
135 https://www.kernel.org/doc/html/latest/sound/kernel-api/writing-an-alsa-driver.html
139 ----------------
140 The Dynamic Audio Power Management description describes the codec power
144 Please also see the examples in other codec drivers.
148 ------------------
149 This function is a callback that handles codec domain PM calls and system
150 domain PM calls (e.g. suspend and resume). It is used to put the codec
153 Power states:-
168 Codec DAC digital mute control
169 ------------------------------
174 A callback can be created that is called by the core for each codec DAI
182 struct snd_soc_component *component = dai->component;