Home
last modified time | relevance | path

Searched full:dai (Results 1 – 25 of 1735) sorted by relevance

12345678910>>...70

/linux-6.14.4/sound/soc/
Dsoc-dai.c3 // soc-dai.c
10 #include <sound/soc-dai.h>
13 #define soc_dai_ret(dai, ret) _soc_dai_ret(dai, __func__, ret) argument
14 static inline int _soc_dai_ret(const 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, tgt) ((dai)->mark_##tgt = NULL) argument
41 #define soc_dai_mark_match(dai, substream, tgt) ((dai)->mark_##tgt == substream) argument
44 * snd_soc_dai_set_sysclk - configure DAI system or master clock.
[all …]
/linux-6.14.4/include/sound/
Dsoc-dai.h3 * linux/sound/soc-dai.h -- ALSA SoC Layer
7 * Digital Audio Interface (DAI) API.
22 * DAI hardware audio formats.
56 * DAI Clock gating.
58 * DAI bit clocks can be gated (disabled) when the DAI is not
76 * DAI hardware signal polarity.
78 * Specifies whether the DAI can also support inverted clocks for the specified
110 * DAI hardware clock providers/consumers
171 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,
[all …]
/linux-6.14.4/sound/soc/qcom/qdsp6/
Dq6apm-lpass-dais.c27 static int q6dma_set_channel_map(struct snd_soc_dai *dai, in q6dma_set_channel_map() argument
34 struct q6apm_lpass_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6dma_set_channel_map()
35 struct audioreach_module_config *cfg = &dai_data->module_config[dai->id]; in q6dma_set_channel_map()
38 switch (dai->id) { in q6dma_set_channel_map()
52 dev_err(dai->dev, "tx slot not found\n"); in q6dma_set_channel_map()
57 dev_err(dai->dev, "invalid tx num %d\n", in q6dma_set_channel_map()
77 dev_err(dai->dev, "rx slot not found\n"); in q6dma_set_channel_map()
81 dev_err(dai->dev, "invalid rx num %d\n", in q6dma_set_channel_map()
90 dev_err(dai->dev, "%s: invalid dai id 0x%x\n", in q6dma_set_channel_map()
91 __func__, dai->id); in q6dma_set_channel_map()
[all …]
Dq6afe-dai.c39 struct snd_soc_dai *dai) in q6slim_hw_params() argument
42 struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6slim_hw_params()
43 struct q6afe_slim_cfg *slim = &dai_data->port_config[dai->id].slim; in q6slim_hw_params()
69 struct snd_soc_dai *dai) in q6hdmi_hw_params() argument
71 struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6hdmi_hw_params()
73 struct q6afe_hdmi_cfg *hdmi = &dai_data->port_config[dai->id].hdmi; in q6hdmi_hw_params()
97 struct snd_soc_dai *dai) in q6i2s_hw_params() argument
99 struct q6afe_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6i2s_hw_params()
100 struct q6afe_i2s_cfg *i2s = &dai_data->port_config[dai->id].i2s_cfg; in q6i2s_hw_params()
105 i2s->sd_line_mask = dai_data->priv[dai->id].sd_line_mask; in q6i2s_hw_params()
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/sound/
Dfsl,qmc-audio.yaml15 It provides several DAIs. For each DAI, the DAI is working in interleaved mode
16 if only one QMC channel is used by the DAI or it is working in non-interleaved
17 mode if several QMC channels are used by the DAI.
20 - $ref: dai-common.yaml#
30 '#sound-dai-cells':
34 '^dai@([0-9]|[1-5][0-9]|6[0-3])$':
36 A DAI managed by this controller
45 The DAI number
56 and the QMC channel pair to use for this DAI.
57 If only one phandle/number pair is provided, this DAI works in
[all …]
Damlogic,axg-sound-card.yaml37 "^dai-link-[0-9]+$":
41 Container for dai-link level properties and the CODEC sub-nodes.
45 dai-format:
49 dai-tdm-slot-num:
56 dai-tdm-slot-width:
68 sound-dai:
70 description: phandle of the CPU DAI
73 "^dai-tdm-slot-(t|r)x-mask-[0-3]$":
87 dai-link representing backend links should have at least one subnode.
88 One subnode for each codec of the dai-link. dai-link representing
[all …]
Dgoogle,sc7280-herobrine.yaml30 "^dai-link@[0-9a-f]$":
32 Each subnode represents a dai link. Subnodes of each dai links would be
39 description: Indicates dai-link name and PCM stream name.
45 description: dai link address.
48 description: Holds subnode which indicates cpu dai.
51 sound-dai: true
54 - sound-dai
59 description: Holds subnode which indicates codec dai.
62 sound-dai: true
65 - sound-dai
[all …]
Dqcom,sm8250.yaml62 ".*-dai-link$":
64 Each subnode represents a dai link. Subnodes of each dai links would be
71 description: Indicates dai-link name and PCM stream name.
76 description: Holds subnode which indicates cpu dai.
81 sound-dai:
85 description: Holds subnode which indicates platform dai.
90 sound-dai:
94 description: Holds subnode which indicates codec dai.
99 sound-dai:
128 mm1-dai-link {
[all …]
Dmt8192-mt6359-rt1015-rt5682.yaml66 sound-dai:
69 - sound-dai
77 sound-dai:
83 - sound-dai
86 ".*-dai-link$":
91 Container for dai-link level properties and CODEC sub-nodes.
95 description: Indicates dai-link name and PCM stream name
110 description: Holds subnode which indicates codec dai.
114 sound-dai:
118 - sound-dai
[all …]
Damlogic,gx-sound-card.yaml38 "^dai-link-[0-9]+$":
42 dai-link child nodes:
43 Container for dai-link level properties and the CODEC sub-nodes.
47 dai-format:
57 sound-dai:
59 description: phandle of the CPU DAI
67 dai-link representing backend links should have at least one subnode.
68 One subnode for each codec of the dai-link. dai-link representing
72 sound-dai:
74 description: phandle of the codec DAI
[all …]
Dmt8186-mt6366-da7219-max98357.yaml57 sound-dai:
60 - sound-dai
67 sound-dai:
74 - sound-dai
80 mediatek,dai-link:
83 A list of the desired dai-links in the sound card. Each entry is a
87 ".*-dai-link$":
91 Container for dai-link level properties and CODEC sub-nodes.
95 description: Indicates dai-link name and PCM stream name
104 description: Holds subnode which indicates codec dai.
[all …]
Dimx-audio-card.yaml21 ".*-dai-link$":
23 Each subnode represents a dai link. Subnodes of each dai links would be
30 description: Indicates dai-link name and PCM stream name.
41 dai-tdm-slot-num:
45 dai-tdm-slot-width:
50 description: Holds subnode which indicates cpu dai.
54 sound-dai:
58 description: Holds subnode which indicates codec dai.
62 sound-dai:
86 pri-dai-link {
[all …]
/linux-6.14.4/sound/soc/tegra/
Dtegra210_ahub.c101 DAI(ADMAIF1),
102 DAI(ADMAIF2),
103 DAI(ADMAIF3),
104 DAI(ADMAIF4),
105 DAI(ADMAIF5),
106 DAI(ADMAIF6),
107 DAI(ADMAIF7),
108 DAI(ADMAIF8),
109 DAI(ADMAIF9),
110 DAI(ADMAIF10),
[all …]
/linux-6.14.4/sound/soc/meson/
Daxg-tdm-interface.c11 #include <sound/soc-dai.h>
38 int axg_tdm_set_tdm_slots(struct snd_soc_dai *dai, u32 *tx_mask, in axg_tdm_set_tdm_slots() argument
42 struct axg_tdm_iface *iface = snd_soc_dai_get_drvdata(dai); in axg_tdm_set_tdm_slots()
43 struct axg_tdm_stream *tx = snd_soc_dai_dma_data_get_playback(dai); in axg_tdm_set_tdm_slots()
44 struct axg_tdm_stream *rx = snd_soc_dai_dma_data_get_capture(dai); in axg_tdm_set_tdm_slots()
53 dev_err(dai->dev, "interface has no slot\n"); in axg_tdm_set_tdm_slots()
77 dev_err(dai->dev, "unsupported slot width: %d\n", slot_width); in axg_tdm_set_tdm_slots()
83 /* Amend the dai driver and let dpcm merge do its job */ in axg_tdm_set_tdm_slots()
86 dai->driver->playback.channels_max = tx_slots; in axg_tdm_set_tdm_slots()
87 dai->driver->playback.formats = fmt; in axg_tdm_set_tdm_slots()
[all …]
Daiu-fifo.c11 #include <sound/soc-dai.h>
36 struct snd_soc_dai *dai = aiu_fifo_dai(substream); in aiu_fifo_pointer() local
37 struct aiu_fifo *fifo = snd_soc_dai_dma_data_get_playback(dai); 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 = snd_soc_dai_dma_data_get_playback(dai); 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
[all …]
/linux-6.14.4/arch/arm64/boot/dts/amlogic/
Dmeson-sm1-bananapi-m5.dts72 dai-link-0 {
73 sound-dai = <&frddr_a>;
76 dai-link-1 {
77 sound-dai = <&frddr_b>;
80 dai-link-2 {
81 sound-dai = <&frddr_c>;
84 dai-link-3 {
85 sound-dai = <&toddr_a>;
88 dai-link-4 {
89 sound-dai = <&toddr_b>;
[all …]
Dmeson-g12b-dreambox.dtsi24 #sound-dai-cells = <0>;
55 dai-link-0 {
56 sound-dai = <&frddr_a>;
59 dai-link-1 {
60 sound-dai = <&frddr_b>;
63 dai-link-2 {
64 sound-dai = <&frddr_c>;
68 dai-link-3 {
69 sound-dai = <&tdmif_b>;
70 dai-format = "i2s";
[all …]
Dmeson-g12b-gtking.dts23 #sound-dai-cells = <0>;
52 dai-link-0 {
53 sound-dai = <&frddr_a>;
56 dai-link-1 {
57 sound-dai = <&frddr_b>;
60 dai-link-2 {
61 sound-dai = <&frddr_c>;
65 dai-link-3 {
66 sound-dai = <&tdmif_b>;
67 dai-format = "i2s";
[all …]
Dmeson-g12b-ugoos-am6.dts18 #sound-dai-cells = <0>;
47 dai-link-0 {
48 sound-dai = <&frddr_a>;
51 dai-link-1 {
52 sound-dai = <&frddr_b>;
55 dai-link-2 {
56 sound-dai = <&frddr_c>;
60 dai-link-3 {
61 sound-dai = <&tdmif_b>;
62 dai-format = "i2s";
[all …]
Dmeson-g12b-odroid-n2l.dts54 dai-link-0 {
55 sound-dai = <&frddr_a>;
58 dai-link-1 {
59 sound-dai = <&frddr_b>;
62 dai-link-2 {
63 sound-dai = <&frddr_c>;
66 dai-link-3 {
67 sound-dai = <&toddr_a>;
70 dai-link-4 {
71 sound-dai = <&toddr_b>;
[all …]
/linux-6.14.4/sound/soc/ux500/
Dux500_msp_dai.c20 #include <sound/soc-dai.h>
27 static int setup_pcm_multichan(struct snd_soc_dai *dai, in setup_pcm_multichan() argument
30 struct ux500_msp_i2s_drvdata *drvdata = dev_get_drvdata(dai->dev); in setup_pcm_multichan()
51 dev_dbg(dai->dev, in setup_pcm_multichan()
60 static int setup_frameper(struct snd_soc_dai *dai, unsigned int rate, in setup_frameper() argument
63 struct ux500_msp_i2s_drvdata *drvdata = dev_get_drvdata(dai->dev); in setup_frameper()
89 dev_err(dai->dev, in setup_frameper()
108 dev_err(dai->dev, in setup_frameper()
117 dev_dbg(dai->dev, "%s: Clocks per frame: %u\n", in setup_frameper()
124 static int setup_pcm_framing(struct snd_soc_dai *dai, unsigned int rate, in setup_pcm_framing() argument
[all …]
/linux-6.14.4/arch/arm64/boot/dts/qcom/
Dmsm8916-modem-qdsp6.dtsi6 * but boards can define additional codecs by adding additional backend DAI links.
49 dai@16 {
53 dai@20 {
60 dai@0 {
64 dai@1 {
68 dai@2 {
72 dai@3 {
75 is-compress-dai;
89 frontend0-dai-link {
93 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
[all …]
/linux-6.14.4/sound/soc/intel/avs/
Dpcm.c39 avs_dai_find_path_template(struct snd_soc_dai *dai, bool is_fe, int direction) in avs_dai_find_path_template() argument
41 struct snd_soc_dapm_widget *dw = snd_soc_dai_get_widget(dai, direction); in avs_dai_find_path_template()
71 struct snd_soc_dai *dai = snd_soc_rtd_to_cpu(rtd, 0); in avs_period_elapsed() local
72 struct avs_dma_data *data = snd_soc_dai_get_dma_data(dai, substream); in avs_period_elapsed()
77 static int avs_dai_startup(struct snd_pcm_substream *substream, struct snd_soc_dai *dai) in avs_dai_startup() argument
80 struct avs_dev *adev = to_avs_dev(dai->component->dev); in avs_dai_startup()
84 template = avs_dai_find_path_template(dai, !rtd->dai_link->no_pcm, substream->stream); in avs_dai_startup()
86 dev_err(dai->dev, "no %s path for dai %s, invalid tplg?\n", in avs_dai_startup()
87 snd_pcm_stream_str(substream), dai->name); in avs_dai_startup()
99 snd_soc_dai_set_dma_data(dai, substream, data); in avs_dai_startup()
[all …]
/linux-6.14.4/sound/soc/mediatek/mt8365/
Dmt8365-dai-pcm.c3 * MediaTek 8365 ALSA SoC Audio DAI PCM Control
23 /* DAI Drivers */
38 struct snd_soc_dai *dai) in mt8365_dai_configure_pcm1() argument
40 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mt8365_dai_configure_pcm1()
47 unsigned int bit_width = dai->symmetric_sample_bits; in mt8365_dai_configure_pcm1()
108 struct snd_soc_dai *dai) in mt8365_dai_pcm1_startup() argument
110 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mt8365_dai_pcm1_startup()
112 if (snd_soc_dai_active(dai)) in mt8365_dai_pcm1_startup()
121 struct snd_soc_dai *dai) in mt8365_dai_pcm1_shutdown() argument
123 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mt8365_dai_pcm1_shutdown()
[all …]
Dmt8365-dai-dmic.c3 * MediaTek 8365 ALSA SoC Audio DAI DMIC Control
50 /* DAI Drivers */
70 struct snd_soc_dai *dai) in mt8365_dai_enable_dmic() argument
90 struct snd_soc_dai *dai) in mt8365_dai_disable_dmic() argument
113 struct snd_soc_dai *dai) in mt8365_dai_configure_dmic() argument
121 unsigned int rate = dai->symmetric_rate; in mt8365_dai_configure_dmic()
122 int reg = get_chan_reg(dai->symmetric_channels); in mt8365_dai_configure_dmic()
127 dmic_data->dmic_channel = dai->symmetric_channels; in mt8365_dai_configure_dmic()
163 struct snd_soc_dai *dai) in mt8365_dai_dmic_startup() argument
165 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai); in mt8365_dai_dmic_startup()
[all …]

12345678910>>...70