• Home
  • Raw
  • Download

Lines Matching +full:tdm +full:- +full:data +full:- +full:out

1 // SPDX-License-Identifier: GPL-2.0
14 #include <sound/soc-dai.h>
16 #include <dt-bindings/sound/meson-g12a-toacodec.h>
17 #include "axg-tdm.h"
18 #include "meson-codec-glue.h"
20 #define G12A_TOACODEC_DRV_NAME "g12a-toacodec"
46 struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; in g12a_toacodec_mux_put_enum()
49 if (ucontrol->value.enumerated.item[0] >= e->items) in g12a_toacodec_mux_put_enum()
50 return -EINVAL; in g12a_toacodec_mux_put_enum()
52 mux = snd_soc_enum_item_to_val(e, ucontrol->value.enumerated.item[0]); in g12a_toacodec_mux_put_enum()
53 changed = snd_soc_component_test_bits(component, e->reg, in g12a_toacodec_mux_put_enum()
63 snd_soc_component_update_bits(component, e->reg, in g12a_toacodec_mux_put_enum()
74 * controller instead of going the through the TDM interface. in g12a_toacodec_mux_put_enum()
78 * find out the clock used by the interface and select the same in g12a_toacodec_mux_put_enum()
82 snd_soc_component_update_bits(component, e->reg, in g12a_toacodec_mux_put_enum()
107 SND_SOC_DAPM_SWITCH("OUT EN", SND_SOC_NOPM, 0, 0,
115 struct meson_codec_glue_input *data; in g12a_toacodec_input_hw_params() local
122 /* The glue will provide 1 lane out of the 4 to the output */ in g12a_toacodec_input_hw_params()
123 data = meson_codec_glue_input_get_data(dai); in g12a_toacodec_input_hw_params()
124 data->params.channels_min = min_t(unsigned int, TOACODEC_OUT_CHMAX, in g12a_toacodec_input_hw_params()
125 data->params.channels_min); in g12a_toacodec_input_hw_params()
126 data->params.channels_max = min_t(unsigned int, TOACODEC_OUT_CHMAX, in g12a_toacodec_input_hw_params()
127 data->params.channels_max); in g12a_toacodec_input_hw_params()
171 TOACODEC_OUTPUT("OUT", TOACODEC_OUT),
185 { "OUT EN", "Switch", "SRC" },
186 { "OUT Capture", NULL, "OUT EN" },
212 { .compatible = "amlogic,g12a-toacodec", },
219 struct device *dev = &pdev->dev; in g12a_toacodec_probe()