Lines Matching +full:soc +full:- +full:glue

1 // SPDX-License-Identifier: GPL-2.0
8 #include <sound/soc.h>
9 #include <sound/soc-dai.h>
11 #include "meson-codec-glue.h"
20 if (!p->connect) in meson_codec_glue_get_input()
24 if (snd_soc_dapm_to_component(w->dapm) != in meson_codec_glue_get_input()
25 snd_soc_dapm_to_component(p->source->dapm)) in meson_codec_glue_get_input()
28 if (p->source->id == snd_soc_dapm_dai_in) in meson_codec_glue_get_input()
29 return p->source; in meson_codec_glue_get_input()
31 in = meson_codec_glue_get_input(p->source); in meson_codec_glue_get_input()
62 dai = in->priv; in meson_codec_glue_output_get_input_data()
74 data->params.rates = snd_pcm_rate_to_rate_bit(params_rate(params)); in meson_codec_glue_input_hw_params()
75 data->params.rate_min = params_rate(params); in meson_codec_glue_input_hw_params()
76 data->params.rate_max = params_rate(params); in meson_codec_glue_input_hw_params()
77 data->params.formats = 1ULL << (__force int) params_format(params); in meson_codec_glue_input_hw_params()
78 data->params.channels_min = params_channels(params); in meson_codec_glue_input_hw_params()
79 data->params.channels_max = params_channels(params); in meson_codec_glue_input_hw_params()
80 data->params.sig_bits = dai->driver->playback.sig_bits; in meson_codec_glue_input_hw_params()
93 data->fmt = fmt; in meson_codec_glue_input_set_fmt()
106 return -ENODEV; in meson_codec_glue_output_startup()
108 if (WARN_ON(!rtd->dai_link->c2c_params)) { in meson_codec_glue_output_startup()
109 dev_warn(dai->dev, "codec2codec link expected\n"); in meson_codec_glue_output_startup()
110 return -EINVAL; in meson_codec_glue_output_startup()
114 rtd->dai_link->c2c_params = &in_data->params; in meson_codec_glue_output_startup()
115 rtd->dai_link->num_c2c_params = 1; in meson_codec_glue_output_startup()
117 return snd_soc_runtime_set_dai_fmt(rtd, in_data->fmt); in meson_codec_glue_output_startup()
127 return -ENOMEM; in meson_codec_glue_input_dai_probe()
145 MODULE_DESCRIPTION("Amlogic Codec Glue Helpers");