Home
last modified time | relevance | path

Searched +full:dai +full:- +full:channels (Results 1 – 25 of 389) sorted by relevance

12345678910>>...16

/Linux-v6.1/sound/soc/sof/
Dipc3-pcm.c1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
11 #include "ipc3-priv.h"
13 #include "sof-priv.h"
14 #include "sof-audio.h"
27 return -EINVAL; in sof_ipc3_pcm_hw_free()
29 if (!spcm->prepared[substream->stream]) in sof_ipc3_pcm_hw_free()
34 stream.comp_id = spcm->stream[substream->stream].comp_id; in sof_ipc3_pcm_hw_free()
37 return sof_ipc_tx_message(sdev->ipc, &stream, sizeof(stream), &reply, sizeof(reply)); in sof_ipc3_pcm_hw_free()
47 struct sof_ipc_fw_version *v = &sdev->fw_ready.version; in sof_ipc3_pcm_hw_params()
48 struct snd_pcm_runtime *runtime = substream->runtime; in sof_ipc3_pcm_hw_params()
[all …]
/Linux-v6.1/sound/soc/codecs/
Dhdmi-codec.c1 // SPDX-License-Identifier: GPL-2.0-only
4 * Copyright (C) 2015 Texas Instruments Incorporated - https://www.ti.com/
16 #include <sound/hdmi-codec.h>
21 #define HDMI_CODEC_CHMAP_IDX_UNKNOWN -1
59 { .channels = 2,
64 /* Channel maps for multi-channel playbacks, up to 8 n_ch */
66 { .channels = 2, /* CA_ID 0x00 */
68 { .channels = 4, /* CA_ID 0x01 */
71 { .channels = 4, /* CA_ID 0x02 */
74 { .channels = 4, /* CA_ID 0x03 */
[all …]
Dad193x.c1 // SPDX-License-Identifier: GPL-2.0-or-later
30 * AD193X volume/mute/de-emphasis etc. controls
37 static const DECLARE_TLV_DB_MINMAX(adau193x_tlv, -9563, 0);
67 /* DAC de-emphasis */
78 /* ADC high-pass filter */
105 struct snd_soc_component *component = snd_soc_dapm_to_component(source->dapm); in ad193x_check_pll()
108 return !!ad193x->sysclk; in ad193x_check_pll()
131 switch (ad193x->type) { in ad193x_has_adc()
143 * DAI ops entries
146 static int ad193x_mute(struct snd_soc_dai *dai, int mute, int direction) in ad193x_mute() argument
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/sound/
Daudio-graph-port.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/audio-graph-port.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
15 - $ref: /schemas/graph.yaml#/$defs/port-base
21 convert-rate:
22 $ref: "/schemas/sound/dai-params.yaml#/$defs/dai-sample-rate"
23 convert-channels:
24 $ref: "/schemas/sound/dai-params.yaml#/$defs/dai-channels"
[all …]
Dsimple-card.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/sound/simple-card.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
14 frame-master:
15 description: Indicates dai-link frame master.
18 bitclock-master:
19 description: Indicates dai-link bit clock master
22 frame-inversion:
[all …]
Ddai-params.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/dai-params.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Digital Audio Interface (DAI) Stream Parameters
10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
16 dai-channels:
17 description: Number of audio channels used by DAI
22 dai-sample-format:
23 description: Audio sample format used by DAI
[all …]
Drockchip-i2s.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/sound/rockchip-i2s.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 The I2S bus (Inter-IC sound bus) is a serial link for digital
14 - Heiko Stuebner <heiko@sntech.de>
19 - const: rockchip,rk3066-i2s
20 - items:
21 - enum:
22 - rockchip,px30-i2s
[all …]
Daudio-graph.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/audio-graph.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
14 $ref: /schemas/types.yaml#/definitions/phandle-array
25 $ref: /schemas/types.yaml#/definitions/non-unique-string-array
28 $ref: /schemas/types.yaml#/definitions/non-unique-string-array
29 convert-rate:
30 $ref: "/schemas/sound/dai-params.yaml#/$defs/dai-sample-rate"
[all …]
/Linux-v6.1/sound/soc/sh/
Dssi.c1 // SPDX-License-Identifier: GPL-2.0
62 #define SSIREG(reg) (*(unsigned long *)(ssi->mmio + (reg)))
86 * track usage of the SSI; it is simplex-only so prevent attempts of
90 struct snd_soc_dai *dai) in ssi_startup() argument
92 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_startup()
93 if (ssi->inuse) { in ssi_startup()
95 return -EBUSY; in ssi_startup()
97 ssi->inuse = 1; in ssi_startup()
102 struct snd_soc_dai *dai) in ssi_shutdown() argument
104 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_shutdown()
[all …]
/Linux-v6.1/sound/soc/amd/acp/
Dacp-pdm.c1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
22 #include <sound/soc-dai.h>
26 #define DRV_NAME "acp-pdm"
41 struct snd_soc_dai *dai) in acp_dmic_prepare() argument
43 struct acp_stream *stream = substream->runtime->private_data; in acp_dmic_prepare()
44 struct device *dev = dai->component->dev; in acp_dmic_prepare()
50 writel(PDM_CLK_FREQ_MASK, adata->acp_base + ACP_WOV_CLK_CTRL); in acp_dmic_prepare()
51 dmic_ctrl = readl(adata->acp_base + ACP_WOV_MISC_CTRL); in acp_dmic_prepare()
53 writel(dmic_ctrl, adata->acp_base + ACP_WOV_MISC_CTRL); in acp_dmic_prepare()
55 period_bytes = frames_to_bytes(substream->runtime, in acp_dmic_prepare()
[all …]
/Linux-v6.1/sound/soc/mediatek/mt8183/
Dmt8183-dai-tdm.c1 // SPDX-License-Identifier: GPL-2.0
3 // MediaTek ALSA SoC Audio DAI TDM Control
10 #include "mt8183-afe-clk.h"
11 #include "mt8183-afe-common.h"
12 #include "mt8183-interconnection.h"
13 #include "mt8183-reg.h"
92 return snd_pcm_format_physical_width(format) - 1; in get_tdm_lrck_width()
113 static unsigned int get_tdm_ch_fixup(unsigned int channels) in get_tdm_ch_fixup() argument
115 if (channels > 4) in get_tdm_ch_fixup()
117 else if (channels > 2) in get_tdm_ch_fixup()
[all …]
/Linux-v6.1/sound/soc/mediatek/mt8195/
Dmt8195-dai-etdm.c1 // SPDX-License-Identifier: GPL-2.0
3 * MediaTek ALSA SoC Audio DAI eTDM Control
14 #include "mt8195-afe-clk.h"
15 #include "mt8195-afe-common.h"
16 #include "mt8195-reg.h"
115 int cowork_source_id; //dai id
117 int cowork_slv_id[MT8195_AFE_IO_ETDM_NUM - 1]; //dai_id
148 return -EINVAL; in get_etdm_fs_timing()
151 static unsigned int get_etdm_ch_fixup(unsigned int channels) in get_etdm_ch_fixup() argument
153 if (channels > 16) in get_etdm_ch_fixup()
[all …]
/Linux-v6.1/sound/soc/sunxi/
Dsun4i-i2s.c1 // SPDX-License-Identifier: GPL-2.0-or-later
7 * Maxime Ripard <maxime.ripard@free-electrons.com>
22 #include <sound/soc-dai.h>
85 #define SUN4I_I2S_CHAN_SEL(num_chan) (((num_chan) - 1) << 0)
93 /* Defines required for sun8i-h3 support */
106 #define SUN8I_I2S_FMT0_LRCK_PERIOD(period) ((period - 1) << 8)
119 #define SUN8I_I2S_CHAN_CFG_RX_SLOT_NUM(chan) ((chan - 1) << 4)
121 #define SUN8I_I2S_CHAN_CFG_TX_SLOT_NUM(chan) (chan - 1)
128 #define SUN8I_I2S_TX_CHAN_EN(num_chan) (((1 << num_chan) - 1) << 4)
133 /* Defines required for sun50i-h6 support */
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/iio/adc/
Dst,stm32-dfsdm-adc.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/iio/adc/st,stm32-dfsdm-adc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Fabrice Gasnier <fabrice.gasnier@foss.st.com>
11 - Olivier Moysan <olivier.moysan@foss.st.com>
14 STM32 DFSDM ADC is a sigma delta analog-to-digital converter dedicated to
17 - Sigma delta modulators (motor control, metering...)
18 - PDM microphones (audio digital microphone)
28 - st,stm32h7-dfsdm
[all …]
/Linux-v6.1/sound/soc/mediatek/mt8186/
Dmt8186-dai-tdm.c1 // SPDX-License-Identifier: GPL-2.0
3 // MediaTek ALSA SoC Audio DAI TDM Control
11 #include "mt8186-afe-clk.h"
12 #include "mt8186-afe-common.h"
13 #include "mt8186-afe-gpio.h"
14 #include "mt8186-interconnection.h"
65 return snd_pcm_format_physical_width(format) - 1; in get_tdm_lrck_width()
68 static unsigned int get_tdm_ch_fixup(unsigned int channels) in get_tdm_ch_fixup() argument
70 if (channels > 4) in get_tdm_ch_fixup()
72 else if (channels > 2) in get_tdm_ch_fixup()
[all …]
/Linux-v6.1/sound/soc/mediatek/mt8192/
Dmt8192-dai-tdm.c1 // SPDX-License-Identifier: GPL-2.0
3 // MediaTek ALSA SoC Audio DAI TDM Control
11 #include "mt8192-afe-clk.h"
12 #include "mt8192-afe-common.h"
13 #include "mt8192-afe-gpio.h"
14 #include "mt8192-interconnection.h"
84 return snd_pcm_format_physical_width(format) - 1; in get_tdm_lrck_width()
105 static unsigned int get_tdm_ch_fixup(unsigned int channels) in get_tdm_ch_fixup() argument
107 if (channels > 4) in get_tdm_ch_fixup()
109 else if (channels > 2) in get_tdm_ch_fixup()
[all …]
/Linux-v6.1/sound/soc/atmel/
Dmchp-i2s-mcc.c1 // SPDX-License-Identifier: GPL-2.0
3 // Driver for Microchip I2S Multi-channel controller
29 * ---- I2S Controller Register map ----
75 * ---- Control Register (Write-only) ----
86 * ---- Mode Register A (Read/Write) ----
135 /* Number of TDM Channels - 1 */
138 ((((ch) - 1) << 13) & MCHP_I2SMCC_MRA_NBCHAN_MASK)
169 * ---- Mode Register B (Read/Write) ----
171 /* all enabled I2S left channels are filled first, then I2S right channels */
175 * channel, until all channels are filled
[all …]
Dmchp-pdmc.c1 // SPDX-License-Identifier: GPL-2.0
5 // Copyright (C) 2019-2022 Microchip Technology Inc. and its subsidiaries
9 #include <dt-bindings/sound/microchip,pdmc.h>
22 * ---- PDMC Register map ----
35 * ---- Control Register (Write-only) ----
40 * ---- Mode Register (Read/Write) ----
68 * ---- Configuration Register (Read/Write) ----
77 * ---- Interrupt Enable/Disable/Mask/Status Registers ----
87 * ---- Version Register (Read-only) ----
140 struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; in mchp_pdmc_sinc_order_get()
[all …]
/Linux-v6.1/sound/soc/ti/
Domap-mcpdm.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * omap-mcpdm.c -- OMAP ALSA SoC DAI driver using McPDM port
5 * Copyright (C) 2009 - 2011 Texas Instruments
30 #include "omap-mcpdm.h"
31 #include "sdma-pcm.h"
51 /* McPDM dn offsets for rx1, and 2 channels */
69 writel_relaxed(val, mcpdm->io_base + reg); in omap_mcpdm_write()
74 return readl_relaxed(mcpdm->io_base + reg); in omap_mcpdm_read()
80 dev_dbg(mcpdm->dev, "***********************\n"); in omap_mcpdm_reg_dump()
81 dev_dbg(mcpdm->dev, "IRQSTATUS_RAW: 0x%04x\n", in omap_mcpdm_reg_dump()
[all …]
Domap-dmic.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * omap-dmic.c -- OMAP ASoC DMIC DAI driver
5 * Copyright (C) 2010 - 2011 Texas Instruments
30 #include "omap-dmic.h"
31 #include "sdma-pcm.h"
53 writel_relaxed(val, dmic->io_base + reg); in omap_dmic_write()
58 return readl_relaxed(dmic->io_base + reg); in omap_dmic_read()
69 omap_dmic_write(dmic, OMAP_DMIC_CTRL_REG, ctrl | dmic->ch_enabled); in omap_dmic_start()
91 struct snd_soc_dai *dai) in omap_dmic_dai_startup() argument
93 struct omap_dmic *dmic = snd_soc_dai_get_drvdata(dai); in omap_dmic_dai_startup()
[all …]
/Linux-v6.1/drivers/staging/greybus/
Daudio_codec.c1 // SPDX-License-Identifier: GPL-2.0
26 list_for_each_entry(data, &module->data_list, list) { in find_data()
27 if (id == data->id) in find_data()
36 struct gbaudio_codec_dai *dai; in find_dai_stream_params() local
38 list_for_each_entry(dai, &codec->dai_list, list) { in find_dai_stream_params()
39 if (dai->id == id) in find_dai_stream_params()
40 return &dai->params[stream]; in find_dai_stream_params()
50 u8 sig_bits, channels; in gbaudio_module_enable_tx() local
55 /* find the dai */ in gbaudio_module_enable_tx()
58 dev_err(module->dev, "%d:DATA connection missing\n", id); in gbaudio_module_enable_tx()
[all …]
/Linux-v6.1/sound/soc/xilinx/
Dxlnx_i2s.c1 // SPDX-License-Identifier: GPL-2.0
32 u32 channels; member
44 return -EINVAL; in xlnx_i2s_set_sclkout_div()
46 drv_data->sysclk = 0; in xlnx_i2s_set_sclkout_div()
48 writel(div, drv_data->base + I2S_I2STIM_OFFSET); in xlnx_i2s_set_sclkout_div()
53 static int xlnx_i2s_set_sysclk(struct snd_soc_dai *dai, in xlnx_i2s_set_sysclk() argument
56 struct xlnx_i2s_drv_data *drv_data = snd_soc_dai_get_drvdata(dai); in xlnx_i2s_set_sysclk()
58 drv_data->sysclk = freq; in xlnx_i2s_set_sysclk()
62 if (drv_data->is_32bit_lrclk) in xlnx_i2s_set_sysclk()
65 bits_per_sample = drv_data->data_width; in xlnx_i2s_set_sysclk()
[all …]
/Linux-v6.1/sound/soc/qcom/
Dlpass-cpu.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2010-2011,2013-2015 The Linux Foundation. All rights reserved.
5 * lpass-cpu.c -- ALSA SoC CPU DAI driver for QTi LPASS
18 #include <sound/soc-dai.h>
19 #include "lpass-lpaif-reg.h"
38 { .channels = 4,
47 struct lpass_variant *v = drvdata->variant; in lpass_cpu_init_i2sctl_bitfields()
49 i2sctl->loopback = devm_regmap_field_alloc(dev, map, v->loopback); in lpass_cpu_init_i2sctl_bitfields()
50 i2sctl->spken = devm_regmap_field_alloc(dev, map, v->spken); in lpass_cpu_init_i2sctl_bitfields()
51 i2sctl->spkmode = devm_regmap_field_alloc(dev, map, v->spkmode); in lpass_cpu_init_i2sctl_bitfields()
[all …]
/Linux-v6.1/sound/soc/sti/
Duniperif_reader.c1 // SPDX-License-Identifier: GPL-2.0-only
15 * integrate unireader capability in term of rate and supported channels
49 spin_lock(&reader->irq_lock); in uni_reader_irq_handler()
50 if (!reader->substream) in uni_reader_irq_handler()
53 snd_pcm_stream_lock(reader->substream); in uni_reader_irq_handler()
54 if (reader->state == UNIPERIF_STATE_STOPPED) { in uni_reader_irq_handler()
56 dev_warn(reader->dev, "unexpected IRQ\n"); in uni_reader_irq_handler()
66 dev_err(reader->dev, "FIFO error detected\n"); in uni_reader_irq_handler()
68 snd_pcm_stop(reader->substream, SNDRV_PCM_STATE_XRUN); in uni_reader_irq_handler()
74 snd_pcm_stream_unlock(reader->substream); in uni_reader_irq_handler()
[all …]
/Linux-v6.1/sound/soc/meson/
Daxg-tdm-interface.c1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
11 #include <sound/soc-dai.h>
13 #include "axg-tdm.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()
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()
53 return -EINVAL; in axg_tdm_set_tdm_slots()
56 iface->slots = slots; in axg_tdm_set_tdm_slots()
[all …]

12345678910>>...16