Lines Matching refs:dai
3 * linux/sound/soc-dai.h -- ALSA SoC Layer
114 int snd_soc_dai_set_sysclk(struct snd_soc_dai *dai, int clk_id,
117 int snd_soc_dai_set_clkdiv(struct snd_soc_dai *dai,
120 int snd_soc_dai_set_pll(struct snd_soc_dai *dai,
123 int snd_soc_dai_set_bclk_ratio(struct snd_soc_dai *dai, unsigned int ratio);
126 int snd_soc_dai_set_fmt(struct snd_soc_dai *dai, unsigned int fmt);
128 int snd_soc_dai_set_tdm_slot(struct snd_soc_dai *dai,
131 int snd_soc_dai_set_channel_map(struct snd_soc_dai *dai,
135 int snd_soc_dai_set_tristate(struct snd_soc_dai *dai, int tristate);
138 int snd_soc_dai_digital_mute(struct snd_soc_dai *dai, int mute,
142 int snd_soc_dai_get_channel_map(struct snd_soc_dai *dai,
146 int snd_soc_dai_is_dummy(struct snd_soc_dai *dai);
148 int snd_soc_dai_hw_params(struct snd_soc_dai *dai,
151 void snd_soc_dai_hw_free(struct snd_soc_dai *dai,
153 int snd_soc_dai_startup(struct snd_soc_dai *dai,
155 void snd_soc_dai_shutdown(struct snd_soc_dai *dai,
157 snd_pcm_sframes_t snd_soc_dai_delay(struct snd_soc_dai *dai,
159 void snd_soc_dai_suspend(struct snd_soc_dai *dai);
160 void snd_soc_dai_resume(struct snd_soc_dai *dai);
161 int snd_soc_dai_compress_new(struct snd_soc_dai *dai,
163 bool snd_soc_dai_stream_valid(struct snd_soc_dai *dai, int stream);
165 void snd_soc_dai_action(struct snd_soc_dai *dai,
167 static inline void snd_soc_dai_activate(struct snd_soc_dai *dai,
170 snd_soc_dai_action(dai, stream, 1);
172 static inline void snd_soc_dai_deactivate(struct snd_soc_dai *dai,
175 snd_soc_dai_action(dai, stream, -1);
177 int snd_soc_dai_active(struct snd_soc_dai *dai);
187 int snd_soc_dai_compr_startup(struct snd_soc_dai *dai,
189 void snd_soc_dai_compr_shutdown(struct snd_soc_dai *dai,
191 int snd_soc_dai_compr_trigger(struct snd_soc_dai *dai,
193 int snd_soc_dai_compr_set_params(struct snd_soc_dai *dai,
196 int snd_soc_dai_compr_get_params(struct snd_soc_dai *dai,
199 int snd_soc_dai_compr_ack(struct snd_soc_dai *dai,
202 int snd_soc_dai_compr_pointer(struct snd_soc_dai *dai,
205 int snd_soc_dai_compr_set_metadata(struct snd_soc_dai *dai,
208 int snd_soc_dai_compr_get_metadata(struct snd_soc_dai *dai,
217 int (*set_sysclk)(struct snd_soc_dai *dai,
219 int (*set_pll)(struct snd_soc_dai *dai, int pll_id, int source,
221 int (*set_clkdiv)(struct snd_soc_dai *dai, int div_id, int div);
222 int (*set_bclk_ratio)(struct snd_soc_dai *dai, unsigned int ratio);
228 int (*set_fmt)(struct snd_soc_dai *dai, unsigned int fmt);
231 int (*set_tdm_slot)(struct snd_soc_dai *dai,
234 int (*set_channel_map)(struct snd_soc_dai *dai,
237 int (*get_channel_map)(struct snd_soc_dai *dai,
240 int (*set_tristate)(struct snd_soc_dai *dai, int tristate);
242 int (*set_stream)(struct snd_soc_dai *dai,
244 void *(*get_stream)(struct snd_soc_dai *dai, int direction);
250 int (*mute_stream)(struct snd_soc_dai *dai, int mute, int stream);
268 * compatible with the current state of the dai. For example this
330 int (*probe)(struct snd_soc_dai *dai);
331 int (*remove)(struct snd_soc_dai *dai);
332 /* compress dai */
336 struct snd_soc_dai *dai);
399 snd_soc_dai_get_pcm_stream(const struct snd_soc_dai *dai, int stream)
402 &dai->driver->playback : &dai->driver->capture;
407 struct snd_soc_dai *dai, int stream)
410 dai->playback_widget : dai->capture_widget;
413 static inline void *snd_soc_dai_get_dma_data(const struct snd_soc_dai *dai,
417 dai->playback_dma_data : dai->capture_dma_data;
420 static inline void snd_soc_dai_set_dma_data(struct snd_soc_dai *dai,
425 dai->playback_dma_data = data;
427 dai->capture_dma_data = data;
430 static inline void snd_soc_dai_init_dma_data(struct snd_soc_dai *dai,
433 dai->playback_dma_data = playback;
434 dai->capture_dma_data = capture;
437 static inline void snd_soc_dai_set_drvdata(struct snd_soc_dai *dai,
440 dev_set_drvdata(dai->dev, data);
443 static inline void *snd_soc_dai_get_drvdata(struct snd_soc_dai *dai)
445 return dev_get_drvdata(dai->dev);
450 * @dai: DAI
460 static inline int snd_soc_dai_set_stream(struct snd_soc_dai *dai,
463 if (dai->driver->ops->set_stream)
464 return dai->driver->ops->set_stream(dai, stream, direction);
471 * @dai: DAI
480 static inline void *snd_soc_dai_get_stream(struct snd_soc_dai *dai,
483 if (dai->driver->ops->get_stream)
484 return dai->driver->ops->get_stream(dai, direction);
490 snd_soc_dai_stream_active(struct snd_soc_dai *dai, int stream)
492 return dai->stream_active[stream];