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 :-
153 DAILINK_COMP_ARRAY(COMP_PLATFORM("dsp-audio")));
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 :-
180 DAILINK_COMP_ARRAY(COMP_CPU("ssp-dai.0")),
181 DAILINK_COMP_ARRAY(COMP_CODEC("rt5640.0-001c", "rt5640-aif1")));
186 .name = "Codec Headset",
197 This BE DAI link connects DAI0 to the codec (in this case RT5460 AIF1). It sets
202 like a BT phone call :-
206 PCM0 <------------> * * <----DAI0-----> Codec Headset
208 PCM1 <------------> * * <----DAI1-----> Codec Speakers
210 PCM2 <------------> * * <====DAI2=====> MODEM
212 PCM3 <------------> * * <====DAI3=====> BT
214 * * <----DAI4-----> DMIC
216 * * <----DAI5-----> FM
222 A BE DAI link can also set the codec to a dummy device if the codec is a device
230 --------------------
251 rate->min = rate->max = 48000;
252 channels->min = channels->max = 2;
263 ------------------------
266 by the ASoC DAPM core. However, if the BE codec or BE DAI is a dummy then this
267 has to be set explicitly in the driver :-
270 /* BE for codec Headset - DAI0 is dummy and managed by DSP FW */
271 {"DAI0 CODEC IN", NULL, "AIF1 Capture"},
272 {"AIF1 Playback", NULL, "DAI0 CODEC OUT"},
279 combined with elements from a codec class driver. A DSP platform driver must
280 implement :-
282 1. Front End PCM DAIs - i.e. struct snd_soc_dai_driver.
296 have :-
303 component drivers (e.g. codec graph).
314 PCM0 <------------> * * <----DAI0-----> Codec Headset
316 PCM1 <------------> * * <====DAI1=====> Codec Speakers/Mic
318 PCM2 <------------> * * <====DAI2=====> MODEM
320 PCM3 <------------> * * <----DAI3-----> BT
322 * * <----DAI4-----> DMIC
324 * * <----DAI5-----> FM
330 The host can control the hostless link either by :-
332 1. Configuring the link as a CODEC <-> CODEC style link. In this case the link
340 userspace code to control the link. Its recommended to use CODEC<->CODEC
344 CODEC <-> CODEC link
345 --------------------
365 .codec_dai_name = "modem-aif1",
381 -----------