Lines Matching refs:sink

55 			 struct snd_soc_dapm_widget *sink));
245 * or activated with the widget as the sink.
261 * have changed. E.g. if the sink state of a widget changes or a path is added
274 * Resets the cached number of inputs for the sink of the path and the cached
296 dapm_widget_invalidate_input_paths(p->sink);
297 if (p->sink->endpoints[SND_SOC_DAPM_DIR_OUT] != 0)
788 p->sink->kcontrol_news[i].private_value;
797 val = soc_dapm_read(p->sink->dapm, reg);
812 val = soc_dapm_read(p->sink->dapm, mc->rreg);
838 for (i = 0; i < path->sink->num_kcontrols; i++) {
839 if (!strcmp(control_name, path->sink->kcontrol_news[i].name)) {
840 path->name = path->sink->kcontrol_news[i].name;
1468 !path->connected(path->source, path->sink))
1471 if (dapm_widget_power_check(path->sink))
1900 dapm_widget_set_peer_power(path->sink, power,
2146 if (p->connected && !p->connected(p->source, p->sink))
2269 dapm_mark_dirty(path->sink, reason);
2494 * remove source and sink paths associated to this widget.
2496 * source and sink widgets so that path is removed only once.
2663 p->source->name, p->sink->name);
2692 ret = dapm_update_dai_chan(p, p->sink, channels);
2722 * dapm_update_widget_flags() - Re-compute widget sink and source flags
2753 /* On a fully routed card a output is never a sink */
2758 if (p->sink->id == snd_soc_dapm_spk ||
2759 p->sink->id == snd_soc_dapm_hp ||
2760 p->sink->id == snd_soc_dapm_line ||
2761 p->sink->id == snd_soc_dapm_input) {
2782 struct snd_soc_dapm_widget *source, struct snd_soc_dapm_widget *sink,
2799 switch (sink->id) {
2813 source->name, control, sink->name);
2818 source->name, control, sink->name);
2829 struct snd_soc_dapm_widget *sink))
2932 const char *sink;
2944 prefix, route->sink);
2945 sink = prefixed_sink;
2950 sink = route->sink;
2955 wsink = dapm_wcache_lookup(&dapm->path_sink_cache, sink);
2965 if (!wsink && !(strcmp(w->name, sink))) {
2975 "ASoC: sink widget %s overwritten\n",
3005 dev_err(dapm->dev, "ASoC: no sink widget found for %s\n",
3006 route->sink);
3022 source, route->control, sink);
3031 const char *sink;
3046 prefix, route->sink);
3047 sink = prefixed_sink;
3052 sink = route->sink;
3060 if (strcmp(p->sink->name, sink) != 0)
3068 wsink = path->sink;
3082 source, sink);
3094 * Connects 2 dapm widgets together via a named audio path. The sink is
3113 route->sink);
3154 struct snd_soc_dapm_widget *sink = dapm_find_widget(dapm,
3155 route->sink,
3166 if (!sink) {
3167 dev_err(dapm->dev, "ASoC: Unable to find sink %s for weak route\n",
3168 route->sink);
3174 route->source, route->sink);
3177 if (path->sink == sink) {
3185 route->source, route->sink);
3188 count, route->source, route->sink);
3830 struct snd_soc_dai *source, *sink;
3865 sink = path->sink->priv;
3867 ret = snd_soc_dai_startup(sink, substream);
3869 dev_err(sink->dev,
3873 snd_soc_dai_activate(sink, substream->stream);
3924 sink = path->sink->priv;
3926 ret = snd_soc_dai_hw_params(sink, substream, params);
3930 dapm_update_dai_unlocked(substream, params, sink);
3947 struct snd_soc_dai *source, *sink;
3965 sink = path->sink->priv;
3967 ret = snd_soc_dai_digital_mute(sink, 0,
3970 dev_warn(sink->dev,
3978 sink = path->sink->priv;
3980 ret = snd_soc_dai_digital_mute(sink, 1,
3983 dev_warn(sink->dev,
3996 sink = path->sink->priv;
3997 snd_soc_dai_hw_free(sink, substream);
4009 sink = path->sink->priv;
4010 snd_soc_dai_deactivate(sink, substream->stream);
4011 snd_soc_dai_shutdown(sink, substream, 0);
4272 struct snd_soc_dapm_widget *src, *sink;
4312 sink = w;
4315 sink = dai_w;
4317 dev_dbg(dai->dev, "%s -> %s\n", src->name, sink->name);
4318 snd_soc_dapm_add_path(w->dapm, src, sink, NULL, NULL);
4330 struct snd_soc_dapm_widget *sink)
4334 sink_dai->component->name, sink->name);
4341 snd_soc_dapm_add_path(dapm, src, sink, NULL, NULL);