Home
last modified time | relevance | path

Searched refs:dai (Results 1 – 25 of 1024) sorted by relevance

12345678910>>...41

/Linux-v6.1/sound/soc/
Dsoc-dai.c13 #define soc_dai_ret(dai, ret) _soc_dai_ret(dai, __func__, ret) argument
14 static inline int _soc_dai_ret(struct snd_soc_dai *dai, in _soc_dai_ret() argument
27 dev_err(dai->dev, in _soc_dai_ret()
29 func, dai->name, ret); in _soc_dai_ret()
39 #define soc_dai_mark_push(dai, substream, tgt) ((dai)->mark_##tgt = substream) argument
40 #define soc_dai_mark_pop(dai, substream, tgt) ((dai)->mark_##tgt = NULL) argument
41 #define soc_dai_mark_match(dai, substream, tgt) ((dai)->mark_##tgt == substream) argument
52 int snd_soc_dai_set_sysclk(struct snd_soc_dai *dai, int clk_id, in snd_soc_dai_set_sysclk() argument
57 if (dai->driver->ops && in snd_soc_dai_set_sysclk()
58 dai->driver->ops->set_sysclk) in snd_soc_dai_set_sysclk()
[all …]
/Linux-v6.1/include/sound/
Dsoc-dai.h171 int snd_soc_dai_set_sysclk(struct snd_soc_dai *dai, int clk_id,
174 int snd_soc_dai_set_clkdiv(struct snd_soc_dai *dai,
177 int snd_soc_dai_set_pll(struct snd_soc_dai *dai,
180 int snd_soc_dai_set_bclk_ratio(struct snd_soc_dai *dai, unsigned int ratio);
184 u64 snd_soc_dai_get_fmt(struct snd_soc_dai *dai, int priority);
185 int snd_soc_dai_set_fmt(struct snd_soc_dai *dai, unsigned int fmt);
187 int snd_soc_dai_set_tdm_slot(struct snd_soc_dai *dai,
190 int snd_soc_dai_set_channel_map(struct snd_soc_dai *dai,
194 int snd_soc_dai_set_tristate(struct snd_soc_dai *dai, int tristate);
197 int snd_soc_dai_digital_mute(struct snd_soc_dai *dai, int mute,
[all …]
/Linux-v6.1/sound/soc/qcom/qdsp6/
Dq6apm-lpass-dais.c25 static int q6dma_set_channel_map(struct snd_soc_dai *dai, in q6dma_set_channel_map() argument
30 struct q6apm_lpass_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6dma_set_channel_map()
31 struct audioreach_module_config *cfg = &dai_data->module_config[dai->id]; in q6dma_set_channel_map()
34 switch (dai->id) { in q6dma_set_channel_map()
48 dev_err(dai->dev, "tx slot not found\n"); in q6dma_set_channel_map()
53 dev_err(dai->dev, "invalid tx num %d\n", in q6dma_set_channel_map()
72 dev_err(dai->dev, "rx slot not found\n"); in q6dma_set_channel_map()
76 dev_err(dai->dev, "invalid rx num %d\n", in q6dma_set_channel_map()
84 dev_err(dai->dev, "%s: invalid dai id 0x%x\n", in q6dma_set_channel_map()
85 __func__, dai->id); in q6dma_set_channel_map()
[all …]
Dq6afe-dai.c37 struct snd_soc_dai *dai) in q6slim_hw_params() argument
40 struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6slim_hw_params()
41 struct q6afe_slim_cfg *slim = &dai_data->port_config[dai->id].slim; in q6slim_hw_params()
67 struct snd_soc_dai *dai) in q6hdmi_hw_params() argument
69 struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6hdmi_hw_params()
71 struct q6afe_hdmi_cfg *hdmi = &dai_data->port_config[dai->id].hdmi; in q6hdmi_hw_params()
107 dev_err(dai->dev, "invalid Channels = %u\n", channels); in q6hdmi_hw_params()
116 struct snd_soc_dai *dai) in q6i2s_hw_params() argument
118 struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6i2s_hw_params()
119 struct q6afe_i2s_cfg *i2s = &dai_data->port_config[dai->id].i2s_cfg; in q6i2s_hw_params()
[all …]
/Linux-v6.1/sound/soc/meson/
Daxg-tdm-interface.c35 int axg_tdm_set_tdm_slots(struct snd_soc_dai *dai, u32 *tx_mask, in axg_tdm_set_tdm_slots() argument
39 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai); in axg_tdm_set_tdm_slots()
41 dai->playback_dma_data; in axg_tdm_set_tdm_slots()
43 dai->capture_dma_data; in axg_tdm_set_tdm_slots()
52 dev_err(dai->dev, "interface has no slot\n"); in axg_tdm_set_tdm_slots()
76 dev_err(dai->dev, "unsupported slot width: %d\n", slot_width); in axg_tdm_set_tdm_slots()
85 dai->driver->playback.channels_max = tx_slots; in axg_tdm_set_tdm_slots()
86 dai->driver->playback.formats = fmt; in axg_tdm_set_tdm_slots()
91 dai->driver->capture.channels_max = rx_slots; in axg_tdm_set_tdm_slots()
92 dai->driver->capture.formats = fmt; in axg_tdm_set_tdm_slots()
[all …]
Daiu-fifo.c36 struct snd_soc_dai *dai = aiu_fifo_dai(substream); in aiu_fifo_pointer() local
37 struct aiu_fifo *fifo = dai->playback_dma_data; in aiu_fifo_pointer()
46 static void aiu_fifo_enable(struct snd_soc_dai *dai, bool enable) in aiu_fifo_enable() argument
48 struct snd_soc_component *component = dai->component; in aiu_fifo_enable()
49 struct aiu_fifo *fifo = dai->playback_dma_data; in aiu_fifo_enable()
59 struct snd_soc_dai *dai) in aiu_fifo_trigger() argument
65 aiu_fifo_enable(dai, true); in aiu_fifo_trigger()
70 aiu_fifo_enable(dai, false); in aiu_fifo_trigger()
80 struct snd_soc_dai *dai) in aiu_fifo_prepare() argument
82 struct snd_soc_component *component = dai->component; in aiu_fifo_prepare()
[all …]
Dmeson-codec-glue.c39 static void meson_codec_glue_input_set_data(struct snd_soc_dai *dai, in meson_codec_glue_input_set_data() argument
42 dai->playback_dma_data = data; in meson_codec_glue_input_set_data()
46 meson_codec_glue_input_get_data(struct snd_soc_dai *dai) in meson_codec_glue_input_get_data() argument
48 return dai->playback_dma_data; in meson_codec_glue_input_get_data()
57 struct snd_soc_dai *dai; in meson_codec_glue_output_get_input_data() local
62 dai = in->priv; in meson_codec_glue_output_get_input_data()
64 return meson_codec_glue_input_get_data(dai); in meson_codec_glue_output_get_input_data()
69 struct snd_soc_dai *dai) in meson_codec_glue_input_hw_params() argument
72 meson_codec_glue_input_get_data(dai); in meson_codec_glue_input_hw_params()
80 data->params.sig_bits = dai->driver->playback.sig_bits; in meson_codec_glue_input_hw_params()
[all …]
/Linux-v6.1/sound/soc/ux500/
Dux500_msp_dai.c28 static int setup_pcm_multichan(struct snd_soc_dai *dai, in setup_pcm_multichan() argument
31 struct ux500_msp_i2s_drvdata *drvdata = dev_get_drvdata(dai->dev); in setup_pcm_multichan()
52 dev_dbg(dai->dev, in setup_pcm_multichan()
61 static int setup_frameper(struct snd_soc_dai *dai, unsigned int rate, in setup_frameper() argument
64 struct ux500_msp_i2s_drvdata *drvdata = dev_get_drvdata(dai->dev); in setup_frameper()
90 dev_err(dai->dev, in setup_frameper()
109 dev_err(dai->dev, in setup_frameper()
118 dev_dbg(dai->dev, "%s: Clocks per frame: %u\n", in setup_frameper()
125 static int setup_pcm_framing(struct snd_soc_dai *dai, unsigned int rate, in setup_pcm_framing() argument
128 struct ux500_msp_i2s_drvdata *drvdata = dev_get_drvdata(dai->dev); in setup_pcm_framing()
[all …]
/Linux-v6.1/sound/soc/intel/avs/
Dpcm.c34 avs_dai_find_path_template(struct snd_soc_dai *dai, bool is_fe, int direction) in avs_dai_find_path_template() argument
41 dw = dai->capture_widget; in avs_dai_find_path_template()
44 dw = dai->playback_widget; in avs_dai_find_path_template()
58 static int avs_dai_startup(struct snd_pcm_substream *substream, struct snd_soc_dai *dai, bool is_fe) in avs_dai_startup() argument
63 template = avs_dai_find_path_template(dai, is_fe, substream->stream); in avs_dai_startup()
65 dev_err(dai->dev, "no %s path for dai %s, invalid tplg?\n", in avs_dai_startup()
66 snd_pcm_stream_str(substream), dai->name); in avs_dai_startup()
75 snd_soc_dai_set_dma_data(dai, substream, data); in avs_dai_startup()
82 struct snd_pcm_hw_params *be_hw_params, struct snd_soc_dai *dai, in avs_dai_hw_params() argument
87 struct avs_dev *adev = to_avs_dev(dai->dev); in avs_dai_hw_params()
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/sound/
Damlogic,axg-sound-card.txt16 - dai-link: Container for dai-link level properties and the CODEC
20 Required dai-link properties:
22 - sound-dai: phandle and port of the CPU DAI.
24 Required TDM Backend dai-link properties:
25 - dai-format : CPU/CODEC common audio format
27 Optional TDM Backend dai-link properties:
28 - dai-tdm-slot-rx-mask-{0,1,2,3}: Receive direction slot masks
29 - dai-tdm-slot-tx-mask-{0,1,2,3}: Transmit direction slot masks
34 - dai-tdm-slot-num : Please refer to tdm-slot.txt.
37 - dai-tdm-slot-width : Please refer to tdm-slot.txt. default to 32 if omitted.
[all …]
Damlogic,g12a-tohdmitx.txt8 - #sound-dai-cells: should be 1.
16 #sound-dai-cells = <1>;
27 dai-link-x {
28 sound-dai = <&tdmif_a>;
29 dai-format = "i2s";
30 dai-tdm-slot-tx-mask-0 = <1 1>;
33 sound-dai = <&tohdmitx TOHDMITX_I2S_IN_A>;
37 sound-dai = <&external_dac>;
41 dai-link-y {
42 sound-dai = <&tdmif_c>;
[all …]
/Linux-v6.1/arch/arm64/boot/dts/amlogic/
Dmeson-g12b-gtking.dts23 #sound-dai-cells = <0>;
50 dai-link-0 {
51 sound-dai = <&frddr_a>;
54 dai-link-1 {
55 sound-dai = <&frddr_b>;
58 dai-link-2 {
59 sound-dai = <&frddr_c>;
63 dai-link-3 {
64 sound-dai = <&tdmif_b>;
65 dai-format = "i2s";
[all …]
Dmeson-g12b-ugoos-am6.dts18 #sound-dai-cells = <0>;
45 dai-link-0 {
46 sound-dai = <&frddr_a>;
49 dai-link-1 {
50 sound-dai = <&frddr_b>;
53 dai-link-2 {
54 sound-dai = <&frddr_c>;
58 dai-link-3 {
59 sound-dai = <&tdmif_b>;
60 dai-format = "i2s";
[all …]
Dmeson-sm1-a95xf3-air.dts34 dai-link-0 {
35 sound-dai = <&frddr_a>;
38 dai-link-1 {
39 sound-dai = <&frddr_b>;
42 dai-link-2 {
43 sound-dai = <&frddr_c>;
47 dai-link-3 {
48 sound-dai = <&tdmif_b>;
49 dai-format = "i2s";
50 dai-tdm-slot-tx-mask-0 = <1 1>;
[all …]
Dmeson-sm1-x96-air.dts34 dai-link-0 {
35 sound-dai = <&frddr_a>;
38 dai-link-1 {
39 sound-dai = <&frddr_b>;
42 dai-link-2 {
43 sound-dai = <&frddr_c>;
47 dai-link-3 {
48 sound-dai = <&tdmif_b>;
49 dai-format = "i2s";
50 dai-tdm-slot-tx-mask-0 = <1 1>;
[all …]
/Linux-v6.1/sound/soc/fsl/
Dimx-spdif.c10 struct snd_soc_dai_link dai; member
35 data->dai.cpus = &comp[0]; in imx_spdif_audio_probe()
36 data->dai.codecs = &comp[1]; in imx_spdif_audio_probe()
37 data->dai.platforms = &comp[2]; in imx_spdif_audio_probe()
39 data->dai.num_cpus = 1; in imx_spdif_audio_probe()
40 data->dai.num_codecs = 1; in imx_spdif_audio_probe()
41 data->dai.num_platforms = 1; in imx_spdif_audio_probe()
43 data->dai.name = "S/PDIF PCM"; in imx_spdif_audio_probe()
44 data->dai.stream_name = "S/PDIF PCM"; in imx_spdif_audio_probe()
45 data->dai.codecs->dai_name = "snd-soc-dummy-dai"; in imx_spdif_audio_probe()
[all …]
Dp1022_rdk.c71 struct snd_soc_dai_link dai[2]; member
229 mdata->dai[0].cpus = &comp[0]; in p1022_rdk_probe()
230 mdata->dai[0].codecs = &comp[1]; in p1022_rdk_probe()
231 mdata->dai[0].platforms = &comp[2]; in p1022_rdk_probe()
233 mdata->dai[0].num_cpus = 1; in p1022_rdk_probe()
234 mdata->dai[0].num_codecs = 1; in p1022_rdk_probe()
235 mdata->dai[0].num_platforms = 1; in p1022_rdk_probe()
237 mdata->dai[1].cpus = &comp[3]; in p1022_rdk_probe()
238 mdata->dai[1].codecs = &comp[4]; in p1022_rdk_probe()
239 mdata->dai[1].platforms = &comp[5]; in p1022_rdk_probe()
[all …]
Dimx-rpmsg.c20 struct snd_soc_dai_link dai; member
78 data->dai.cpus = &dlc[0]; in imx_rpmsg_probe()
79 data->dai.num_cpus = 1; in imx_rpmsg_probe()
80 data->dai.platforms = &dlc[1]; in imx_rpmsg_probe()
81 data->dai.num_platforms = 1; in imx_rpmsg_probe()
82 data->dai.codecs = &dlc[2]; in imx_rpmsg_probe()
83 data->dai.num_codecs = 1; in imx_rpmsg_probe()
85 data->dai.name = "rpmsg hifi"; in imx_rpmsg_probe()
86 data->dai.stream_name = "rpmsg hifi"; in imx_rpmsg_probe()
87 data->dai.dai_fmt = SND_SOC_DAIFMT_I2S | in imx_rpmsg_probe()
[all …]
Dimx-hdmi.c24 struct snd_soc_dai_link dai; member
134 data->dai.cpus = &dlc[0]; in imx_hdmi_probe()
135 data->dai.num_cpus = 1; in imx_hdmi_probe()
136 data->dai.platforms = &dlc[1]; in imx_hdmi_probe()
137 data->dai.num_platforms = 1; in imx_hdmi_probe()
138 data->dai.codecs = &dlc[2]; in imx_hdmi_probe()
139 data->dai.num_codecs = 1; in imx_hdmi_probe()
141 data->dai.name = "i.MX HDMI"; in imx_hdmi_probe()
142 data->dai.stream_name = "i.MX HDMI"; in imx_hdmi_probe()
143 data->dai.cpus->dai_name = dev_name(&cpu_pdev->dev); in imx_hdmi_probe()
[all …]
Dimx-audmix.c29 struct snd_soc_dai_link *dai; member
188 priv->dai = devm_kcalloc(&pdev->dev, priv->num_dai, in imx_audmix_probe()
190 if (!priv->dai) in imx_audmix_probe()
241 priv->dai[i].cpus = &dlc[0]; in imx_audmix_probe()
242 priv->dai[i].codecs = &dlc[1]; in imx_audmix_probe()
243 priv->dai[i].platforms = &dlc[2]; in imx_audmix_probe()
245 priv->dai[i].num_cpus = 1; in imx_audmix_probe()
246 priv->dai[i].num_codecs = 1; in imx_audmix_probe()
247 priv->dai[i].num_platforms = 1; in imx_audmix_probe()
249 priv->dai[i].name = dai_name; in imx_audmix_probe()
[all …]
/Linux-v6.1/sound/soc/mediatek/common/
Dmtk-afe-platform-driver.c18 struct mtk_base_afe_dai *dai; in mtk_afe_combine_sub_dai() local
22 list_for_each_entry(dai, &afe->sub_dais, list) { in mtk_afe_combine_sub_dai()
23 num_dai_drivers += dai->num_dai_drivers; in mtk_afe_combine_sub_dai()
37 list_for_each_entry(dai, &afe->sub_dais, list) { in mtk_afe_combine_sub_dai()
40 dai->dai_drivers, in mtk_afe_combine_sub_dai()
41 dai->num_dai_drivers * in mtk_afe_combine_sub_dai()
43 dai_idx += dai->num_dai_drivers; in mtk_afe_combine_sub_dai()
52 struct mtk_base_afe_dai *dai; in mtk_afe_add_sub_dai_control() local
54 list_for_each_entry(dai, &afe->sub_dais, list) { in mtk_afe_add_sub_dai_control()
55 if (dai->controls) in mtk_afe_add_sub_dai_control()
[all …]
/Linux-v6.1/sound/soc/mediatek/mt8195/
Dmt8195-dai-pcm.c120 struct snd_soc_dai *dai) in mtk_dai_pcm_configure() argument
123 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mtk_dai_pcm_configure()
125 struct mtk_dai_pcmif_priv *pcmif_priv = afe_priv->dai_priv[dai->id]; in mtk_dai_pcm_configure()
130 unsigned int bit_width = dai->sample_bits; in mtk_dai_pcm_configure()
214 struct snd_soc_dai *dai) in mtk_dai_pcm_prepare() argument
216 dev_dbg(dai->dev, "%s(), id %d, stream %d, widget active p %d, c %d\n", in mtk_dai_pcm_prepare()
217 __func__, dai->id, substream->stream, in mtk_dai_pcm_prepare()
218 dai->playback_widget->active, dai->capture_widget->active); in mtk_dai_pcm_prepare()
220 if (dai->playback_widget->active || dai->capture_widget->active) in mtk_dai_pcm_prepare()
223 return mtk_dai_pcm_configure(substream, dai); in mtk_dai_pcm_prepare()
[all …]
/Linux-v6.1/sound/soc/atmel/
Dmikroe-proto.c65 struct snd_soc_dai_link *dai; in snd_proto_probe() local
84 dai = devm_kzalloc(&pdev->dev, sizeof(*dai), GFP_KERNEL); in snd_proto_probe()
85 if (!dai) in snd_proto_probe()
93 snd_proto.dai_link = dai; in snd_proto_probe()
96 dai->cpus = &comp[0]; in snd_proto_probe()
97 dai->num_cpus = 1; in snd_proto_probe()
98 dai->codecs = &comp[1]; in snd_proto_probe()
99 dai->num_codecs = 1; in snd_proto_probe()
100 dai->platforms = &comp[2]; in snd_proto_probe()
101 dai->num_platforms = 1; in snd_proto_probe()
[all …]
/Linux-v6.1/sound/soc/codecs/
Dhda-dai.c12 static int hda_codec_dai_startup(struct snd_pcm_substream *substream, struct snd_soc_dai *dai) in hda_codec_dai_startup() argument
19 codec = dev_to_hda_codec(dai->dev); in hda_codec_dai_startup()
20 stream_info = snd_soc_dai_get_dma_data(dai, substream); in hda_codec_dai_startup()
23 dev_dbg(dai->dev, "open stream codec: %08x, info: %p, pcm: %p %s substream: %p\n", in hda_codec_dai_startup()
30 dev_err(dai->dev, "codec open failed: %d\n", ret); in hda_codec_dai_startup()
38 static void hda_codec_dai_shutdown(struct snd_pcm_substream *substream, struct snd_soc_dai *dai) in hda_codec_dai_shutdown() argument
45 codec = dev_to_hda_codec(dai->dev); in hda_codec_dai_shutdown()
46 stream_info = snd_soc_dai_get_dma_data(dai, substream); in hda_codec_dai_shutdown()
49 dev_dbg(dai->dev, "close stream codec: %08x, info: %p, pcm: %p %s substream: %p\n", in hda_codec_dai_shutdown()
54 dev_err(dai->dev, "codec close failed: %d\n", ret); in hda_codec_dai_shutdown()
[all …]
/Linux-v6.1/sound/soc/mediatek/mt8186/
Dmt8186-dai-hw-gain.c127 struct snd_soc_dai *dai) in mtk_dai_gain_hw_params() argument
129 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mtk_dai_gain_hw_params()
131 unsigned int rate_reg = mt8186_rate_transform(afe->dev, rate, dai->id); in mtk_dai_gain_hw_params()
134 __func__, dai->id, substream->stream, rate); in mtk_dai_gain_hw_params()
138 dai->id == MT8186_DAI_HW_GAIN_1 ? in mtk_dai_gain_hw_params()
145 dai->id == MT8186_DAI_HW_GAIN_1 ? in mtk_dai_gain_hw_params()
148 (dai->id == MT8186_DAI_HW_GAIN_1 ? 0x40 : 0x0) << in mtk_dai_gain_hw_params()
218 struct mtk_base_afe_dai *dai; in mt8186_dai_hw_gain_register() local
220 dai = devm_kzalloc(afe->dev, sizeof(*dai), GFP_KERNEL); in mt8186_dai_hw_gain_register()
221 if (!dai) in mt8186_dai_hw_gain_register()
[all …]

12345678910>>...41