Home
last modified time | relevance | path

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

12345678910>>...67

/linux-6.8/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(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
44 * snd_soc_dai_set_sysclk - configure DAI system or master clock.
[all …]
/linux-6.8/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.8/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
32 struct q6apm_lpass_dai_data *dai_data = dev_get_drvdata(dai->dev); in q6dma_set_channel_map()
33 struct audioreach_module_config *cfg = &dai_data->module_config[dai->id]; in q6dma_set_channel_map()
36 switch (dai->id) { in q6dma_set_channel_map()
50 dev_err(dai->dev, "tx slot not found\n"); in q6dma_set_channel_map()
55 dev_err(dai->dev, "invalid tx num %d\n", in q6dma_set_channel_map()
74 dev_err(dai->dev, "rx slot not found\n"); in q6dma_set_channel_map()
78 dev_err(dai->dev, "invalid rx num %d\n", in q6dma_set_channel_map()
86 dev_err(dai->dev, "%s: invalid dai id 0x%x\n", in q6dma_set_channel_map()
87 __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.8/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.8/Documentation/devicetree/bindings/sound/
Damlogic,axg-sound-card.yaml30 "^dai-link-[0-9]+$":
34 Container for dai-link level properties and the CODEC sub-nodes.
38 dai-format:
42 dai-tdm-slot-num:
49 dai-tdm-slot-width:
61 sound-dai:
63 description: phandle of the CPU DAI
66 "^dai-tdm-slot-(t|r)x-mask-[0-3]$":
80 dai-link representing backend links should have at least one subnode.
81 One subnode for each codec of the dai-link. dai-link representing
[all …]
Dqcom,sm8250.yaml71 ".*-dai-link$":
73 Each subnode represents a dai link. Subnodes of each dai links would be
80 description: Indicates dai-link name and PCM stream name.
85 description: Holds subnode which indicates cpu dai.
90 sound-dai:
94 description: Holds subnode which indicates platform dai.
99 sound-dai:
103 description: Holds subnode which indicates codec dai.
108 sound-dai:
165 mm1-dai-link {
[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 …]
Dfsl,qmc-audio.yaml15 It provides as many DAI as the number of QMC channel used.
18 - $ref: dai-common.yaml#
28 '#sound-dai-cells':
32 '^dai@([0-9]|[1-5][0-9]|6[0-3])$':
34 A DAI managed by this controller
43 The DAI number
53 channel to use for this DAI.
63 - '#sound-dai-cells'
73 #sound-dai-cells = <1>;
74 dai@16 {
[all …]
Damlogic,gx-sound-card.yaml32 "^dai-link-[0-9]+$":
36 dai-link child nodes:
37 Container for dai-link level properties and the CODEC sub-nodes.
41 dai-format:
51 sound-dai:
53 description: phandle of the CPU DAI
61 dai-link representing backend links should have at least one subnode.
62 One subnode for each codec of the dai-link. dai-link representing
66 sound-dai:
68 description: phandle of the 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 …]
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 …]
Dsimple-card.yaml15 description: Indicates dai-link frame master.
19 description: Indicates dai-link bit clock master
23 description: dai-link uses frame clock inversion
27 description: dai-link uses bit clock inversion
30 dai-tdm-slot-num:
34 dai-tdm-slot-width:
63 When defined, mclk-fs property defined in dai-link sub nodes are ignored.
116 dai: schema
119 sound-dai:
136 dai-tdm-slot-num:
[all …]
/linux-6.8/sound/soc/intel/avs/
Dpcm.c37 avs_dai_find_path_template(struct snd_soc_dai *dai, bool is_fe, int direction) in avs_dai_find_path_template() argument
39 struct snd_soc_dapm_widget *dw = snd_soc_dai_get_widget(dai, direction); in avs_dai_find_path_template()
59 static int avs_dai_startup(struct snd_pcm_substream *substream, struct snd_soc_dai *dai, bool is_fe, in avs_dai_startup() argument
63 struct avs_dev *adev = to_avs_dev(dai->dev); in avs_dai_startup()
67 template = avs_dai_find_path_template(dai, is_fe, substream->stream); in avs_dai_startup()
69 dev_err(dai->dev, "no %s path for dai %s, invalid tplg?\n", in avs_dai_startup()
70 snd_pcm_stream_str(substream), dai->name); in avs_dai_startup()
80 snd_soc_dai_set_dma_data(dai, substream, data); in avs_dai_startup()
90 struct snd_pcm_hw_params *be_hw_params, struct snd_soc_dai *dai, in avs_dai_hw_params() argument
95 struct avs_dev *adev = to_avs_dev(dai->dev); in avs_dai_hw_params()
[all …]
/linux-6.8/arch/arm64/boot/dts/amlogic/
Dmeson-sm1-bananapi-m5.dts68 dai-link-0 {
69 sound-dai = <&frddr_a>;
72 dai-link-1 {
73 sound-dai = <&frddr_b>;
76 dai-link-2 {
77 sound-dai = <&frddr_c>;
80 dai-link-3 {
81 sound-dai = <&toddr_a>;
84 dai-link-4 {
85 sound-dai = <&toddr_b>;
[all …]
Dmeson-g12b-gtking.dts23 #sound-dai-cells = <0>;
48 dai-link-0 {
49 sound-dai = <&frddr_a>;
52 dai-link-1 {
53 sound-dai = <&frddr_b>;
56 dai-link-2 {
57 sound-dai = <&frddr_c>;
61 dai-link-3 {
62 sound-dai = <&tdmif_b>;
63 dai-format = "i2s";
[all …]
Dmeson-g12b-odroid-n2l.dts50 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>;
62 dai-link-3 {
63 sound-dai = <&toddr_a>;
66 dai-link-4 {
67 sound-dai = <&toddr_b>;
[all …]
Dmeson-g12b-ugoos-am6.dts18 #sound-dai-cells = <0>;
43 dai-link-0 {
44 sound-dai = <&frddr_a>;
47 dai-link-1 {
48 sound-dai = <&frddr_b>;
51 dai-link-2 {
52 sound-dai = <&frddr_c>;
56 dai-link-3 {
57 sound-dai = <&tdmif_b>;
58 dai-format = "i2s";
[all …]
Dmeson-g12a-u200.dts27 #sound-dai-cells = <0>;
33 #sound-dai-cells = <0>;
39 #sound-dai-cells = <0>;
250 dai-link-0 {
251 sound-dai = <&frddr_a>;
254 dai-link-1 {
255 sound-dai = <&frddr_b>;
258 dai-link-2 {
259 sound-dai = <&frddr_c>;
262 dai-link-3 {
[all …]
Dmeson-g12b-odroid-n2.dtsi82 dai-link-0 {
83 sound-dai = <&frddr_a>;
86 dai-link-1 {
87 sound-dai = <&frddr_b>;
90 dai-link-2 {
91 sound-dai = <&frddr_c>;
94 dai-link-3 {
95 sound-dai = <&toddr_a>;
98 dai-link-4 {
99 sound-dai = <&toddr_b>;
[all …]
/linux-6.8/sound/soc/meson/
Daxg-tdm-interface.c11 #include <sound/soc-dai.h>
35 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()
40 struct axg_tdm_stream *tx = snd_soc_dai_dma_data_get_playback(dai); in axg_tdm_set_tdm_slots()
41 struct axg_tdm_stream *rx = snd_soc_dai_dma_data_get_capture(dai); in axg_tdm_set_tdm_slots()
50 dev_err(dai->dev, "interface has no slot\n"); in axg_tdm_set_tdm_slots()
74 dev_err(dai->dev, "unsupported slot width: %d\n", slot_width); in axg_tdm_set_tdm_slots()
80 /* Amend the dai driver and let dpcm merge do its job */ in axg_tdm_set_tdm_slots()
83 dai->driver->playback.channels_max = tx_slots; in axg_tdm_set_tdm_slots()
84 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.8/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.8/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.8/sound/soc/mediatek/common/
Dmtk-afe-platform-driver.c18 struct mtk_base_afe_dai *dai; in mtk_afe_combine_sub_dai() local
21 /* calcualte total dai driver size */ in mtk_afe_combine_sub_dai()
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()
26 dev_info(afe->dev, "%s(), num of dai %zd\n", __func__, 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()
38 /* dai driver */ 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()
[all …]

12345678910>>...67