Lines Matching +full:input +full:- +full:sel
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
10 #include <sound/soc-dai.h>
12 #include "axg-tdm-formatter.h"
55 SOC_DAPM_ENUM("Input Source", axg_tdmin_sel_enum);
64 if (!p->connect) in axg_tdmin_get_be()
67 if (p->source->id == snd_soc_dapm_dai_out) in axg_tdmin_get_be()
68 return (struct snd_soc_dai *)p->source->priv; in axg_tdmin_get_be()
70 be = axg_tdmin_get_be(p->source); in axg_tdmin_get_be()
115 unsigned int val, skew = quirks->skew_offset; in axg_tdmin_prepare()
118 switch (ts->iface->fmt & SND_SOC_DAIFMT_FORMAT_MASK) { in axg_tdmin_prepare()
130 ts->iface->fmt & SND_SOC_DAIFMT_FORMAT_MASK); in axg_tdmin_prepare()
131 return -EINVAL; in axg_tdmin_prepare()
137 switch (ts->iface->fmt & SND_SOC_DAIFMT_FORMAT_MASK) { in axg_tdmin_prepare()
146 if (axg_tdm_lrclk_invert(ts->iface->fmt)) in axg_tdmin_prepare()
150 val |= TDMIN_CTRL_BITNUM(ts->iface->slot_width - 1); in axg_tdmin_prepare()
184 SND_SOC_DAPM_MUX("SRC SEL", SND_SOC_NOPM, 0, 0, &axg_tdmin_in_mux),
192 { "SRC SEL", "IN 0", "IN 0" },
193 { "SRC SEL", "IN 1", "IN 1" },
194 { "SRC SEL", "IN 2", "IN 2" },
195 { "SRC SEL", "IN 3", "IN 3" },
196 { "SRC SEL", "IN 4", "IN 4" },
197 { "SRC SEL", "IN 5", "IN 5" },
198 { "SRC SEL", "IN 6", "IN 6" },
199 { "SRC SEL", "IN 7", "IN 7" },
200 { "SRC SEL", "IN 8", "IN 8" },
201 { "SRC SEL", "IN 9", "IN 9" },
202 { "SRC SEL", "IN 10", "IN 10" },
203 { "SRC SEL", "IN 11", "IN 11" },
204 { "SRC SEL", "IN 12", "IN 12" },
205 { "SRC SEL", "IN 13", "IN 13" },
206 { "SRC SEL", "IN 14", "IN 14" },
207 { "SRC SEL", "IN 15", "IN 15" },
208 { "DEC", NULL, "SRC SEL" },
237 .compatible = "amlogic,axg-tdmin",
240 .compatible = "amlogic,g12a-tdmin",
243 .compatible = "amlogic,sm1-tdmin",
252 .name = "axg-tdmin",
258 MODULE_DESCRIPTION("Amlogic AXG TDM input formatter driver");