Home
last modified time | relevance | path

Searched +full:dai +full:- +full:sample +full:- +full:format (Results 1 – 25 of 164) sorted by relevance

1234567

/openbmc/linux/Documentation/devicetree/bindings/sound/
H A 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 port-base:
16 $ref: /schemas/graph.yaml#/$defs/port-base
18 convert-rate:
19 $ref: /schemas/sound/dai-params.yaml#/$defs/dai-sample-rate
20 convert-channels:
[all …]
H A 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 …]
H A 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
32 $ref: /schemas/types.yaml#/definitions/non-unique-string-array
33 convert-rate:
34 $ref: /schemas/sound/dai-params.yaml#/$defs/dai-sample-rate
[all …]
H A Dfsl-asoc-card.txt14 sample rates support through ASRC.
17 and PCM DAI formats. However, it'll be also possible to support those non
23 "fsl,imx-audio-ac97"
25 "fsl,imx-audio-cs42888"
27 "fsl,imx-audio-cs427x"
30 "fsl,imx-audio-wm8962"
32 "fsl,imx-audio-sgtl5000"
33 (compatible with Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt)
35 "fsl,imx-audio-wm8960"
37 "fsl,imx-audio-mqs"
[all …]
/openbmc/linux/sound/soc/codecs/
H A Dcs4270.c6 * Copyright 2007-2009 Freescale Semiconductor, Inc. This file is licensed
15 * - Software mode is supported. Stand-alone mode is not supported.
16 * - Only I2C is supported, not SPI
17 * - Support for master and slave mode
18 * - The machine driver's 'startup' function must call
20 * - Only I2S and left-justified modes are supported
21 * - Power management is supported
43 #define CS4270_FORMAT 0x04 /* Serial Format, ADC/DAC Control */
51 #define CS4270_NUMREGS (CS4270_LASTREG - CS4270_FIRSTREG + 1)
101 /* Power-on default values for the registers
[all …]
H A Dsi476x.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * sound/soc/codecs/si476x.c -- Codec driver for SI476X chips
21 #include <linux/mfd/si476x-core.h>
68 struct si476x_core *core = i2c_mfd_cell_to_core(codec_dai->dev); in si476x_codec_set_dai_fmt()
70 u16 format = 0; in si476x_codec_set_dai_fmt() local
73 return -EINVAL; in si476x_codec_set_dai_fmt()
77 format |= SI476X_DAUDIO_MODE_DSP_A; in si476x_codec_set_dai_fmt()
80 format |= SI476X_DAUDIO_MODE_DSP_B; in si476x_codec_set_dai_fmt()
83 format |= SI476X_DAUDIO_MODE_I2S; in si476x_codec_set_dai_fmt()
86 format |= SI476X_DAUDIO_MODE_RIGHT_J; in si476x_codec_set_dai_fmt()
[all …]
H A Dwm8524.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * wm8524.c -- WM8524 ALSA SoC Audio driver
60 struct snd_soc_dai *dai) in wm8524_startup() argument
62 struct snd_soc_component *component = dai->component; in wm8524_startup()
65 /* The set of sample rates that can be supported depends on the in wm8524_startup()
66 * MCLK supplied to the CODEC - enforce this. in wm8524_startup()
68 if (!wm8524->sysclk) { in wm8524_startup()
69 dev_err(component->dev, in wm8524_startup()
71 return -EINVAL; in wm8524_startup()
74 snd_pcm_hw_constraint_list(substream->runtime, 0, in wm8524_startup()
[all …]
H A Dcs4271.c1 // SPDX-License-Identifier: GPL-2.0-or-later
9 * The data format accepted is I2S or left-justified.
132 * Default CS4271 power-up configuration
133 * Array contains non-existing in hw register at address 0
161 /* Current sample rate for de-emphasis control */
177 SND_SOC_DAPM_OUTPUT("AOUTA-"),
179 SND_SOC_DAPM_OUTPUT("AOUTB-"),
187 { "AOUTA-", NULL, "Playback" },
189 { "AOUTB-", NULL, "Playback" },
194 * MCLK rate should (c) be the sample rate, multiplied by one of the
[all …]
H A Duda1334.c1 // SPDX-License-Identifier: GPL-2.0-only
3 // uda1334.c -- UDA1334 ALSA SoC Audio driver
47 int deemph = ucontrol->value.integer.value[0]; in uda1334_put_deemph()
50 return -EINVAL; in uda1334_put_deemph()
52 gpiod_set_value_cansleep(uda1334->deemph, deemph); in uda1334_put_deemph()
64 ret = gpiod_get_value_cansleep(uda1334->deemph); in uda1334_get_deemph()
66 return -EINVAL; in uda1334_get_deemph()
68 ucontrol->value.integer.value[0] = ret; in uda1334_get_deemph()
91 struct snd_soc_dai *dai) in uda1334_startup() argument
93 struct snd_soc_component *component = dai->component; in uda1334_startup()
[all …]
H A Dcs4234.c1 // SPDX-License-Identifier: GPL-2.0-only
2 // cs4234.c -- ALSA SoC CS4234 driver
39 unsigned int format; member
44 /* -89.92dB to +6.02dB with step of 0.38dB */
45 static const DECLARE_TLV_DB_SCALE(dac_tlv, -8992, 38, 0);
65 "Interpolation Filter", "Sample and Hold"
96 regmap_read(cs4234->regmap, CS4234_ADC_CTRL2, &val); in cs4234_dac14_grp_delay_put()
98 ret = -EBUSY; in cs4234_dac14_grp_delay_put()
99 dev_err(component->dev, "Can't change group delay while ADC are ON\n"); in cs4234_dac14_grp_delay_put()
103 regmap_read(cs4234->regmap, CS4234_DAC_CTRL4, &val); in cs4234_dac14_grp_delay_put()
[all …]
/openbmc/linux/sound/soc/meson/
H A Daxg-tdm-interface.c1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
11 #include <sound/soc-dai.h>
13 #include "axg-tdm.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()
54 return -EINVAL; in axg_tdm_set_tdm_slots()
57 iface->slots = slots; in axg_tdm_set_tdm_slots()
[all …]
/openbmc/linux/sound/soc/fsl/
H A Dmpc5200_psc_i2s.c1 // SPDX-License-Identifier: GPL-2.0-only
4 // ALSA SoC Digital Audio Interface (DAI) driver
22 * PSC_I2S_RATES: sample rates supported by the I2S
25 * which means the codec determines the sample rate. Therefore, we tell
39 struct snd_soc_dai *dai) in psc_i2s_hw_params() argument
45 dev_dbg(psc_dma->dev, "%s(substream=%p) p_size=%i p_bytes=%i" in psc_i2s_hw_params()
65 dev_dbg(psc_dma->dev, "invalid format\n"); in psc_i2s_hw_params()
66 return -EINVAL; in psc_i2s_hw_params()
68 out_be32(&psc_dma->psc_regs->sicr, psc_dma->sicr | mode); in psc_i2s_hw_params()
91 dev_dbg(psc_dma->dev, "psc_i2s_set_sysclk(cpu_dai=%p, dir=%i)\n", in psc_i2s_set_sysclk()
[all …]
H A Dfsl-asoc-card.c1 // SPDX-License-Identifier: GPL-2.0
23 #include "imx-audmux.h"
32 #define DRIVER_NAME "fsl-asoc-card"
39 /* Default DAI format without Master and Slave flag */
43 * struct codec_priv - CODEC private data
61 * struct cpu_priv - CPU private data
79 * struct fsl_asoc_card_priv - Freescale Generic ASOC card private data
80 * @dai_link: DAI link structure including normal one and DPCM link
88 * @sample_rate: Current sample rate
89 * @sample_format: Current sample format
[all …]
/openbmc/linux/sound/soc/sti/
H A Duniperif_player.c1 // SPDX-License-Identifier: GPL-2.0-only
17 * Some hardware-related definitions
27 #define UNIPERIF_PLAYER_CLK_ADJ_MIN -999999
68 spin_lock(&player->irq_lock); in uni_player_irq_handler()
69 if (!player->substream) in uni_player_irq_handler()
72 snd_pcm_stream_lock(player->substream); in uni_player_irq_handler()
73 if (player->state == UNIPERIF_STATE_STOPPED) in uni_player_irq_handler()
82 dev_err(player->dev, "FIFO underflow error detected\n"); in uni_player_irq_handler()
85 if (player->underflow_enabled) { in uni_player_irq_handler()
87 player->state = UNIPERIF_STATE_UNDERFLOW; in uni_player_irq_handler()
[all …]
H A Duniperif_reader.c1 // SPDX-License-Identifier: GPL-2.0-only
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()
76 spin_unlock(&reader->irq_lock); in uni_reader_irq_handler()
[all …]
/openbmc/linux/sound/soc/ti/
H A Ddavinci-i2s.c1 // SPDX-License-Identifier: GPL-2.0-only
9 * based on davinci-mcasp.c DT support
31 #include "edma-pcm.h"
32 #include "davinci-i2s.h"
34 #define DRV_NAME "davinci-i2s"
39 * - This driver supports the "Audio Serial Port" (ASP),
42 * - But it labels it a "Multi-channel Buffered Serial Port"
44 * backward-compatible, possibly explaining that confusion.
46 * - OMAP chips have a controller called McBSP, which is
49 * - Newer DaVinci chips have a controller called McASP,
[all …]
/openbmc/linux/sound/soc/
H A Dsoc-dai.c1 // SPDX-License-Identifier: GPL-2.0
3 // soc-dai.c
10 #include <sound/soc-dai.h>
11 #include <sound/soc-link.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
23 case -EPROBE_DEFER: in _soc_dai_ret()
24 case -ENOTSUPP: in _soc_dai_ret()
27 dev_err(dai->dev, in _soc_dai_ret()
29 func, dai->name, ret); in _soc_dai_ret()
[all …]
/openbmc/linux/sound/soc/sunxi/
H A 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)
88 #define SUN4I_I2S_TX_CHAN_MAP(chan, sample) ((sample) << (chan << 2)) argument
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)
[all …]
H A Dsun8i-codec.c1 // SPDX-License-Identifier: GPL-2.0-or-later
6 * (C) Copyright 2010-2016
9 * Mylène Josserand <mylene.josserand@free-electrons.com>
23 #include <sound/soc-dapm.h>
200 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume()
202 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume()
215 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend()
216 regcache_mark_dirty(scodec->regmap); in sun8i_codec_runtime_suspend()
252 return -EINVAL; in sun8i_codec_get_hw_rate()
262 struct sun8i_codec_aif *aif = &scodec->aifs[i]; in sun8i_codec_update_sample_rate()
[all …]
/openbmc/linux/sound/soc/sh/
H A Dssi.c1 // SPDX-License-Identifier: GPL-2.0
22 * and can be independent from the actual sample bit depth. This is
24 * fixed TDM slot size, regardless of sample resolution.
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()
[all …]
/openbmc/linux/sound/soc/pxa/
H A Dmmp-sspa.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * linux/sound/soc/pxa/mmp-sspa.c
4 * Base on pxa2xx-ssp.c
23 #include <sound/pxa2xx-lib.h>
25 #include "mmp-sspa.h"
47 unsigned int sspa_sp = sspa->sp; in mmp_sspa_tx_enable()
52 __raw_writel(sspa_sp, sspa->tx_base + SSPA_SP); in mmp_sspa_tx_enable()
57 unsigned int sspa_sp = sspa->sp; in mmp_sspa_tx_disable()
62 __raw_writel(sspa_sp, sspa->tx_base + SSPA_SP); in mmp_sspa_tx_disable()
67 unsigned int sspa_sp = sspa->sp; in mmp_sspa_rx_enable()
[all …]
/openbmc/linux/Documentation/sound/soc/
H A Ddapm.rst11 such, can easily co-exist with the other PM systems.
60 Audio DAPM widgets fall into a number of types:-
98 DAI IN
100 DAI OUT
102 DAI Link
103 DAI Link between two DAI structures
116 Sample Rate Converter within DSP or CODEC
118 Asynchronous Sample Rate Converter within DSP or CODEC
120 Widget that encodes audio data from one format (usually PCM) to another
121 usually more compressed format.
[all …]
H A Dcodec-to-codec.rst2 Creating codec to codec dai link for ALSA dapm
9 --------- ---------
10 | | dai | |
11 CPU -------> codec
13 --------- ---------
18 ---------
20 codec-2
22 ---------
24 dai-2
26 ---------- ---------
[all …]
/openbmc/linux/sound/soc/atmel/
H A Datmel_ssc_dai.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * atmel_ssc_dai.c -- ALSA SoC ATMEL SSC Audio Layer Platform driver
11 * Based on at91-ssc.c by
25 #include <linux/atmel-ssc.h>
32 #include "atmel-pcm.h"
147 ssc_sr = (unsigned long)ssc_readl(ssc_p->ssc->regs, SR) in atmel_ssc_interrupt()
148 & (unsigned long)ssc_readl(ssc_p->ssc->regs, IMR); in atmel_ssc_interrupt()
152 * a DMA-related interrupt occurred on that substream, call in atmel_ssc_interrupt()
156 for (i = 0; i < ARRAY_SIZE(ssc_p->dma_params); i++) { in atmel_ssc_interrupt()
157 dma_params = ssc_p->dma_params[i]; in atmel_ssc_interrupt()
[all …]
/openbmc/linux/arch/arm/boot/dts/st/
H A Dstm32mp15xx-dkx.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
3 * Copyright (C) STMicroelectronics 2019 - All Rights Reserved
7 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/mfd/st,stpmic1.h>
22 reserved-memory {
23 #address-cells = <1>;
24 #size-cells = <1>;
28 compatible = "shared-dma-pool";
30 no-map;
34 compatible = "shared-dma-pool";
[all …]

1234567