Lines Matching +full:src +full:- +full:2
1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
17 #include <sound/soc-dai.h>
19 #include "axg-fifo.h"
41 regmap_update_bits(fifo->map, FIFO_CTRL1, in g12a_frddr_dai_prepare()
43 regmap_update_bits(fifo->map, FIFO_CTRL1, in g12a_frddr_dai_prepare()
45 regmap_update_bits(fifo->map, FIFO_CTRL1, in g12a_frddr_dai_prepare()
61 depth = min(period, fifo->depth); in axg_frddr_dai_hw_params()
62 val = (depth / AXG_FIFO_BURST) - 1; in axg_frddr_dai_hw_params()
63 regmap_update_bits(fifo->map, FIFO_CTRL1, CTRL1_FRDDR_DEPTH, in axg_frddr_dai_hw_params()
76 ret = clk_prepare_enable(fifo->pclk); in axg_frddr_dai_startup()
81 regmap_update_bits(fifo->map, FIFO_CTRL0, CTRL0_FRDDR_PP_MODE, 0); in axg_frddr_dai_startup()
91 clk_disable_unprepare(fifo->pclk); in axg_frddr_dai_shutdown()
122 "OUT 0", "OUT 1", "OUT 2", "OUT 3", "OUT 4", "OUT 5", "OUT 6", "OUT 7",
136 SND_SOC_DAPM_AIF_OUT("OUT 2", NULL, 0, SND_SOC_NOPM, 0, 0),
148 { "OUT 2", "OUT 2", "SINK SEL" },
206 SOC_DAPM_ENUM("Output Src 1", g12a_frddr_sel1_enum);
208 SOC_DAPM_ENUM("Output Src 2", g12a_frddr_sel2_enum);
210 SOC_DAPM_ENUM("Output Src 3", g12a_frddr_sel3_enum);
223 SND_SOC_DAPM_AIF_OUT("SRC 1", NULL, 0, SND_SOC_NOPM, 0, 0),
224 SND_SOC_DAPM_AIF_OUT("SRC 2", NULL, 0, SND_SOC_NOPM, 0, 0),
225 SND_SOC_DAPM_AIF_OUT("SRC 3", NULL, 0, SND_SOC_NOPM, 0, 0),
226 SND_SOC_DAPM_SWITCH("SRC 1 EN", SND_SOC_NOPM, 0, 0,
228 SND_SOC_DAPM_SWITCH("SRC 2 EN", SND_SOC_NOPM, 0, 0,
230 SND_SOC_DAPM_SWITCH("SRC 3 EN", SND_SOC_NOPM, 0, 0,
234 SND_SOC_DAPM_DEMUX("SINK 2 SEL", SND_SOC_NOPM, 0, 0,
240 SND_SOC_DAPM_AIF_OUT("OUT 2", NULL, 0, SND_SOC_NOPM, 0, 0),
249 { "SRC 1", NULL, "Playback" },
250 { "SRC 2", NULL, "Playback" },
251 { "SRC 3", NULL, "Playback" },
252 { "SRC 1 EN", "Switch", "SRC 1" },
253 { "SRC 2 EN", "Switch", "SRC 2" },
254 { "SRC 3 EN", "Switch", "SRC 3" },
255 { "SINK 1 SEL", NULL, "SRC 1 EN" },
256 { "SINK 2 SEL", NULL, "SRC 2 EN" },
257 { "SINK 3 SEL", NULL, "SRC 3 EN" },
260 { "OUT 2", "OUT 2", "SINK 1 SEL" },
266 { "OUT 0", "OUT 0", "SINK 2 SEL" },
267 { "OUT 1", "OUT 1", "SINK 2 SEL" },
268 { "OUT 2", "OUT 2", "SINK 2 SEL" },
269 { "OUT 3", "OUT 3", "SINK 2 SEL" },
270 { "OUT 4", "OUT 4", "SINK 2 SEL" },
271 { "OUT 5", "OUT 5", "SINK 2 SEL" },
272 { "OUT 6", "OUT 6", "SINK 2 SEL" },
273 { "OUT 7", "OUT 7", "SINK 2 SEL" },
276 { "OUT 2", "OUT 2", "SINK 3 SEL" },
323 SOC_DAPM_ENUM("Output Src 1", sm1_frddr_sel1_enum);
325 SOC_DAPM_ENUM("Output Src 2", sm1_frddr_sel2_enum);
327 SOC_DAPM_ENUM("Output Src 3", sm1_frddr_sel3_enum);
330 SND_SOC_DAPM_AIF_OUT("SRC 1", NULL, 0, SND_SOC_NOPM, 0, 0),
331 SND_SOC_DAPM_AIF_OUT("SRC 2", NULL, 0, SND_SOC_NOPM, 0, 0),
332 SND_SOC_DAPM_AIF_OUT("SRC 3", NULL, 0, SND_SOC_NOPM, 0, 0),
333 SND_SOC_DAPM_SWITCH("SRC 1 EN", SND_SOC_NOPM, 0, 0,
335 SND_SOC_DAPM_SWITCH("SRC 2 EN", SND_SOC_NOPM, 0, 0,
337 SND_SOC_DAPM_SWITCH("SRC 3 EN", SND_SOC_NOPM, 0, 0,
341 SND_SOC_DAPM_DEMUX("SINK 2 SEL", SND_SOC_NOPM, 0, 0,
347 SND_SOC_DAPM_AIF_OUT("OUT 2", NULL, 0, SND_SOC_NOPM, 0, 0),
377 .compatible = "amlogic,axg-frddr",
380 .compatible = "amlogic,g12a-frddr",
383 .compatible = "amlogic,sm1-frddr",
392 .name = "axg-frddr",