| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/sound/ |
| D | audio-graph-port.yaml | 1 # 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 …]
|
| D | dai-params.yaml | 1 # 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 …]
|
| D | audio-graph.yaml | 1 # 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 …]
|
| D | fsl-asoc-card.txt | 14 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/codecs/ |
| D | cs4270.c | 6 * 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 36 * The codec isn't really big-endian or little-endian, since the I2S 52 #define CS4270_FORMAT 0x04 /* Serial Format, ADC/DAC Control */ 60 #define CS4270_NUMREGS (CS4270_LASTREG - CS4270_FIRSTREG + 1) [all …]
|
| D | si476x.c | 1 // 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 …]
|
| D | wm8524.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/codecs/ |
| D | cs4270.c | 6 * 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 …]
|
| D | si476x.c | 1 // 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 …]
|
| D | wm8524.c | 1 // 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/meson/ |
| D | axg-tdm-interface.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/meson/ |
| D | axg-tdm-interface.c | 1 // 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/fsl/ |
| D | mpc5200_psc_i2s.c | 1 // 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 …]
|
| D | fsl-asoc-card.c | 1 // SPDX-License-Identifier: GPL-2.0 23 #include "imx-audmux.h" 34 /* Default DAI format without Master and Slave flag */ 38 * struct codec_priv - CODEC private data 52 * struct cpu_priv - CPU private data 68 * struct fsl_asoc_card_priv - Freescale Generic ASOC card private data 69 * @dai_link: DAI link structure including normal one and DPCM link 77 * @sample_rate: Current sample rate 78 * @sample_format: Current sample format 79 * @asrc_rate: ASRC sample rate used by Back-Ends [all …]
|
| /kernel/linux/linux-6.6/sound/soc/fsl/ |
| D | mpc5200_psc_i2s.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/sti/ |
| D | uniperif_player.c | 1 // 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/sti/ |
| D | uniperif_player.c | 1 // 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 …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/sound/ |
| D | fsl-asoc-card.txt | 14 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/ti/ |
| D | davinci-i2s.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/sunxi/ |
| D | sun4i-i2s.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/ |
| D | soc-dai.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/ti/ |
| D | davinci-i2s.c | 1 // 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 …]
|
| /kernel/linux/linux-6.6/sound/soc/sh/ |
| D | ssi.c | 1 // 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/sh/ |
| D | ssi.c | 1 // 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/sunxi/ |
| D | sun4i-i2s.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 7 * Maxime Ripard <maxime.ripard@free-electrons.com> 22 #include <sound/soc-dai.h> 82 #define SUN4I_I2S_CHAN_SEL(num_chan) (((num_chan) - 1) << 0) 85 #define SUN4I_I2S_TX_CHAN_MAP(chan, sample) ((sample) << (chan << 2)) argument 90 /* Defines required for sun8i-h3 support */ 103 #define SUN8I_I2S_FMT0_LRCK_PERIOD(period) ((period - 1) << 8) 113 #define SUN8I_I2S_CHAN_CFG_RX_SLOT_NUM(chan) ((chan - 1) << 4) 115 #define SUN8I_I2S_CHAN_CFG_TX_SLOT_NUM(chan) (chan - 1) 122 #define SUN8I_I2S_TX_CHAN_EN(num_chan) (((1 << num_chan) - 1) << 4) [all …]
|