Lines Matching +full:dmic +full:- +full:codec

14 way as the analog signal is routed in an ASoC codec driver. DPCM uses a DAPM
18 DPCM re-uses all the existing component codec, platform and DAI drivers without
23 -------------------------------------
26 document for all examples :-
32 PCM0 <------------> * * <----DAI0-----> Codec Headset
34 PCM1 <------------> * * <----DAI1-----> Codec Speakers
36 PCM2 <------------> * * <----DAI2-----> MODEM
38 PCM3 <------------> * * <----DAI3-----> BT
40 * * <----DAI4-----> DMIC
42 * * <----DAI5-----> FM
53 Example - DPCM Switching playback from DAI0 to DAI1
54 ---------------------------------------------------
59 Playback on PCM0 to Headset would look like :-
63 PCM0 <============> * * <====DAI0=====> Codec Headset
65 PCM1 <------------> * * <----DAI1-----> Codec Speakers
67 PCM2 <------------> * * <----DAI2-----> MODEM
69 PCM3 <------------> * * <----DAI3-----> BT
71 * * <----DAI4-----> DMIC
73 * * <----DAI5-----> FM
76 The headset is removed from the jack by user so the speakers must now be used :-
80 PCM0 <============> * * <----DAI0-----> Codec Headset
82 PCM1 <------------> * * <====DAI1=====> Codec Speakers
84 PCM2 <------------> * * <----DAI2-----> MODEM
86 PCM3 <------------> * * <----DAI3-----> BT
88 * * <----DAI4-----> DMIC
90 * * <----DAI5-----> FM
93 The audio driver processes this as follows :-
117 except that we also have to :-
127 -------------------
133 PCM0 <------------> * * <----DAI0-----> Codec Headset
135 PCM1 <------------> * * <----DAI1-----> Codec Speakers
137 PCM2 <------------> * * <----DAI2-----> MODEM
139 PCM3 <------------> * * <----DAI3-----> BT
141 * * <----DAI4-----> DMIC
143 * * <----DAI5-----> FM
147 FE DAI links are defined as follows :-
155 .platform_name = "dsp-audio",
156 .codec_name = "snd-soc-dummy",
157 .codec_dai_name = "snd-soc-dummy-dai",
173 The FE DAI above sets the codec and code DAIs to dummy devices since the BE is
176 The BE DAIs are configured as follows :-
182 .name = "Codec Headset",
183 .cpu_dai_name = "ssp-dai.0",
184 .platform_name = "snd-soc-dummy",
186 .codec_name = "rt5640.0-001c",
187 .codec_dai_name = "rt5640-aif1",
198 This BE DAI link connects DAI0 to the codec (in this case RT5460 AIF1). It sets
204 like a BT phone call :-
208 PCM0 <------------> * * <----DAI0-----> Codec Headset
210 PCM1 <------------> * * <----DAI1-----> Codec Speakers
212 PCM2 <------------> * * <====DAI2=====> MODEM
214 PCM3 <------------> * * <====DAI3=====> BT
216 * * <----DAI4-----> DMIC
218 * * <----DAI5-----> FM
224 A BE DAI link can also set the codec to a dummy device if the codec is a device
232 --------------------
253 rate->min = rate->max = 48000;
254 channels->min = channels->max = 2;
265 ------------------------
268 by the ASoC DAPM core. However, if the BE codec or BE DAI is a dummy then this
269 has to be set explicitly in the driver :-
272 /* BE for codec Headset - DAI0 is dummy and managed by DSP FW */
273 {"DAI0 CODEC IN", NULL, "AIF1 Capture"},
274 {"AIF1 Playback", NULL, "DAI0 CODEC OUT"},
281 combined with elements from a codec class driver. A DSP platform driver must
282 implement :-
284 1. Front End PCM DAIs - i.e. struct snd_soc_dai_driver.
298 have :-
305 component drivers (e.g. codec graph).
316 PCM0 <------------> * * <----DAI0-----> Codec Headset
318 PCM1 <------------> * * <====DAI1=====> Codec Speakers/Mic
320 PCM2 <------------> * * <====DAI2=====> MODEM
322 PCM3 <------------> * * <----DAI3-----> BT
324 * * <----DAI4-----> DMIC
326 * * <----DAI5-----> FM
332 The host can control the hostless link either by :-
334 1. Configuring the link as a CODEC <-> CODEC style link. In this case the link
342 userspace code to control the link. Its recommended to use CODEC<->CODEC
346 CODEC <-> CODEC link
347 --------------------
367 .codec_dai_name = "modem-aif1",
383 -----------