/Linux-v5.10/Documentation/devicetree/bindings/sound/ |
D | fsl,easrc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NXP Asynchronous Sample Rate Converter (ASRC) Controller 10 - Shengjiu Wang <shengjiu.wang@nxp.com> 17 const: fsl,imx8mn-easrc 27 - description: Peripheral clock 29 clock-names: 31 - const: mem 36 dma-names: [all …]
|
D | fsl,asrc.txt | 1 Freescale Asynchronous Sample Rate Converter (ASRC) Controller 3 The Asynchronous Sample Rate Converter (ASRC) converts the sampling rate of a 11 - compatible : Compatible list, should contain one of the following 13 "fsl,imx35-asrc", 14 "fsl,imx53-asrc", 15 "fsl,imx8qm-asrc", 16 "fsl,imx8qxp-asrc", 18 - reg : Offset and length of the register set for the device. 20 - interrupts : Contains the spdif interrupt. 22 - dmas : Generic dma devicetree binding as described in [all …]
|
D | fsl-asoc-card.txt | 1 Freescale Generic ASoC Sound Card with ASRC support 8 have ASRC (Documentation/devicetree/bindings/sound/fsl,asrc.txt) inside. And 14 sample rates support through ASRC. 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" [all …]
|
/Linux-v5.10/sound/soc/fsl/ |
D | fsl-asoc-card.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Freescale Generic ASoC Sound Card driver with ASRC 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 78 * @sample_format: Current sample format 79 * @asrc_rate: ASRC sample rate used by Back-Ends 80 * @asrc_format: ASRC sample format used by Back-Ends [all …]
|
D | fsl_asrc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Freescale ASRC ALSA SoC Digital Audio Interface (DAI) driver 11 #include <linux/dma-mapping.h> 14 #include <linux/platform_data/dma-imx.h> 24 dev_err(&asrc->pdev->dev, "Pair %c: " fmt, 'A' + index, ##__VA_ARGS__) 27 dev_dbg(&asrc->pdev->dev, "Pair %c: " fmt, 'A' + index, ##__VA_ARGS__) 105 * fsl_asrc_sel_proc - Select the pre-processing and post-processing options 108 * @pre_proc: return value for pre-processing option 109 * @post_proc: return value for post-processing option 138 /* Condition for selection of post-processing */ in fsl_asrc_sel_proc() [all …]
|
D | fsl_asrc_common.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 15 ASRC_INVALID_PAIR = -1, 25 * fsl_asrc_pair: ASRC Pair common data 27 * @asrc: pointer to its parent module 39 struct fsl_asrc *asrc; member 55 * fsl_asrc: ASRC common data 67 * @channel_avail: non-occupied channel numbers 68 * @asrc_rate: default sample rate for ASoC Back-Ends 69 * @asrc_format: default sample format for ASoC Back-Ends 105 #define DRV_NAME "fsl-asrc-dai"
|
D | fsl_easrc.c | 1 // SPDX-License-Identifier: GPL-2.0 7 #include <linux/dma-mapping.h> 32 #include "imx-pcm.h" 51 struct fsl_easrc_priv *easrc_priv = easrc->private; in fsl_easrc_iec958_put_bits() 53 (struct soc_mreg_control *)kcontrol->private_value; in fsl_easrc_iec958_put_bits() 54 unsigned int regval = ucontrol->value.integer.value[0]; in fsl_easrc_iec958_put_bits() 56 easrc_priv->bps_iec958[mc->regbase] = regval; in fsl_easrc_iec958_put_bits() 66 struct fsl_easrc_priv *easrc_priv = easrc->private; in fsl_easrc_iec958_get_bits() 68 (struct soc_mreg_control *)kcontrol->private_value; in fsl_easrc_iec958_get_bits() 70 ucontrol->value.enumerated.item[0] = easrc_priv->bps_iec958[mc->regbase]; in fsl_easrc_iec958_get_bits() [all …]
|
/Linux-v5.10/Documentation/devicetree/bindings/dma/ |
D | fsl-imx-sdma.txt | 4 - compatible : Should be one of 5 "fsl,imx25-sdma" 6 "fsl,imx31-sdma", "fsl,imx31-to1-sdma", "fsl,imx31-to2-sdma" 7 "fsl,imx35-sdma", "fsl,imx35-to1-sdma", "fsl,imx35-to2-sdma" 8 "fsl,imx51-sdma" 9 "fsl,imx53-sdma" 10 "fsl,imx6q-sdma" 11 "fsl,imx7d-sdma" 12 "fsl,imx8mq-sdma" 13 "fsl,imx8mm-sdma" [all …]
|
/Linux-v5.10/sound/soc/sof/ |
D | topology.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 19 #include "sof-priv.h" 20 #include "sof-audio.h" 26 * from dB gain 20th root of 10 in Q1.16 fixed-point notation 29 /* 40th root of 10 in Q1.16 fixed-point notation*/ 33 * the volume linear gain value to use Qx.16 format 61 struct snd_soc_component *scomp = swidget->scomp; in ipc_pcm_params() 71 spcm = snd_sof_find_spcm_name(scomp, swidget->widget->sname); in ipc_pcm_params() 73 dev_err(scomp->dev, "error: cannot find PCM for %s\n", in ipc_pcm_params() 74 swidget->widget->name); in ipc_pcm_params() [all …]
|
/Linux-v5.10/sound/soc/codecs/ |
D | rt5670.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5670.c -- RT5670 ALSA SoC audio codec driver 25 #include <sound/soc-dapm.h> 31 #include "rt5670-dsp.h" 50 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 422 * rt5670_headset_detect - Detect headset. 457 rt5670->jack_type = SND_JACK_HEADSET; in rt5670_headset_detect() 464 rt5670->jack_type = SND_JACK_HEADPHONE; in rt5670_headset_detect() 471 rt5670->jack_type = 0; in rt5670_headset_detect() 476 return rt5670->jack_type; in rt5670_headset_detect() [all …]
|
D | rt5682.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // rt5682.c -- RT5682 ALSA SoC audio component driver 26 #include <sound/soc-dapm.h> 53 ret = regmap_multi_reg_write(rt5682->regmap, patch_list, in rt5682_apply_patch_list() 742 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6525, 75, 0); 743 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -1725, 75, 0); 810 regmap_write(rt5682->regmap, RT5682_RESET, 0); in rt5682_reset() 811 if (!rt5682->is_sdw) in rt5682_reset() 812 regmap_write(rt5682->regmap, RT5682_I2C_MODE, 1); in rt5682_reset() 817 * rt5682_sel_asrc_clk_src - select ASRC clock source for a set of filters [all …]
|
D | rt5668.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5668.c -- RT5668B ALSA SoC audio component driver 27 #include <sound/soc-dapm.h> 746 static const DECLARE_TLV_DB_SCALE(hp_vol_tlv, -2250, 150, 0); 747 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 748 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 803 * rt5668_sel_asrc_clk_src - select ASRC clock source for a set of filters 808 * The ASRC function is for asynchronous MCLK and LRCK. Also, since RT5668 can 809 * only support standard 32fs or 64fs i2s format, ASRC should be enabled to 810 * support special i2s clock format such as Intel's 100fs(100 * sampling rate). [all …]
|
D | rt5677.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5677.c -- RT5677 ALSA SoC audio codec driver 31 #include <sound/soc-dapm.h> 37 #include "rt5677-spi.h" 554 * rt5677_dsp_mode_i2c_write_addr - Write value to address on DSP mode. 565 struct snd_soc_component *component = rt5677->component; in rt5677_dsp_mode_i2c_write_addr() 568 mutex_lock(&rt5677->dsp_cmd_lock); in rt5677_dsp_mode_i2c_write_addr() 570 ret = regmap_write(rt5677->regmap_physical, RT5677_DSP_I2C_ADDR_MSB, in rt5677_dsp_mode_i2c_write_addr() 573 dev_err(component->dev, "Failed to set addr msb value: %d\n", ret); in rt5677_dsp_mode_i2c_write_addr() 577 ret = regmap_write(rt5677->regmap_physical, RT5677_DSP_I2C_ADDR_LSB, in rt5677_dsp_mode_i2c_write_addr() [all …]
|
D | rt5665.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5665.c -- RT5665/RT5658 ALSA SoC audio codec driver 27 #include <sound/soc-dapm.h> 888 static const DECLARE_TLV_DB_SCALE(hp_vol_tlv, -2250, 150, 0); 889 static const DECLARE_TLV_DB_SCALE(mono_vol_tlv, -1400, 150, 0); 890 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 891 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 892 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 893 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 895 static const DECLARE_TLV_DB_SCALE(in_bst_tlv, -1200, 75, 0); [all …]
|
D | rt5645.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5645.c -- RT5645 ALSA SoC audio codec driver 27 #include <sound/soc-dapm.h> 41 static unsigned int quirk = -1; 638 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 639 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6525, 75, 0); 640 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 641 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -1725, 75, 0); 655 /* {-6, -4.5, -3, -1.5, 0, 0.82, 1.58, 2.28} dB */ 657 0, 4, TLV_DB_SCALE_ITEM(-600, 150, 0), [all …]
|
D | rt5663.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5663.c -- RT5663 ALSA SoC audio codec driver 24 #include <sound/soc-dapm.h> 1373 static const DECLARE_TLV_DB_SCALE(rt5663_hp_vol_tlv, -2400, 150, 0); 1374 static const DECLARE_TLV_DB_SCALE(rt5663_v2_hp_vol_tlv, -2250, 150, 0); 1375 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6525, 75, 0); 1376 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -1725, 75, 0); 1405 /* reset in-line command */ in rt5663_enable_push_button_irq() 1412 switch (rt5663->codec_ver) { in rt5663_enable_push_button_irq() 1424 dev_err(component->dev, "Unknown CODEC Version\n"); in rt5663_enable_push_button_irq() [all …]
|
D | tscs454.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // tscs454.c -- TSCS454 ALSA SoC Audio driver 21 #include <sound/soc-dapm.h> 50 pll->id = id; in pll_init() 51 mutex_init(&pll->lock); in pll_init() 66 aif->id = id; in aif_init() 85 cache[((norm_addrs[i] + 1) * COEFF_SIZE) - 1] = 0x40; in init_coeff_ram_cache() 90 init_coeff_ram_cache(ram->cache); in coeff_ram_init() 91 mutex_init(&ram->lock); in coeff_ram_init() 103 status->streams |= mask; in set_aif_status_active() [all …]
|
D | rt5677.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * rt5677.h -- RT5677 ALSA SoC audio driver 20 /* I/O - Output */ 22 /* I/O - Input */ 25 /* I/O - SLIMBus */ 31 /* I/O - ADC/DAC */ 43 /* Mixer - D-D */ 60 /* Mixer - PDM */ 116 /* Format - ADC/DAC */ 124 /* Function - Analog */ [all …]
|
D | rt5670.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * rt5670.h -- RT5670 ALSA SoC audio driver 17 /* I/O - Output */ 20 /* I/O - Input */ 26 /* I/O - ADC/DAC/DMIC */ 34 /* Mixer - D-D */ 47 /* Mixer - PDM */ 56 /* Mixer - ADC */ 61 /* Mixer - DAC */ 77 /* Format - ADC/DAC */ [all …]
|
D | tlv320dac33.c | 1 // SPDX-License-Identifier: GPL-2.0-only 27 #include <sound/tlv320dac33-plat.h> 49 (((samples)*5000) / (((burstrate)*5000) / ((burstrate) - (playrate)))) 115 0x00, 0x00, 0x00, 0x00, /* 0x00 - 0x03 */ 116 0x00, 0x00, 0x00, 0x00, /* 0x04 - 0x07 */ 117 0x00, 0x00, 0x00, 0x00, /* 0x08 - 0x0b */ 118 0x00, 0x00, 0x00, 0x00, /* 0x0c - 0x0f */ 119 0x00, 0x00, 0x00, 0x00, /* 0x10 - 0x13 */ 120 0x00, 0x00, 0x00, 0x00, /* 0x14 - 0x17 */ 121 0x00, 0x00, 0x00, 0x00, /* 0x18 - 0x1b */ [all …]
|
D | rt5645.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * rt5645.h -- RT5645 ALSA SoC audio driver 19 /* I/O - Output */ 24 /* I/O - Input */ 32 /* I/O - ADC/DAC/DMIC */ 40 /* Mixer - D-D */ 49 /* Mixer - PDM */ 51 /* Mixer - ADC */ 56 /* Mixer - DAC */ 94 /* Format - ADC/DAC */ [all …]
|
/Linux-v5.10/sound/soc/intel/boards/ |
D | cht_bsw_rt5672.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cht_bsw_rt5672.c - ASoc Machine driver for Intel Cherryview-based platforms 21 #include <sound/soc-acpi.h> 23 #include "../atom/sst-atom-controls.h" 28 #define CHT_CODEC_DAI "rt5670-aif1" 51 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 52 struct snd_soc_card *card = dapm->card; in platform_clock_control() 59 dev_err(card->dev, "Codec dai not found; Unable to set platform clock\n"); in platform_clock_control() 60 return -EIO; in platform_clock_control() 64 if (ctx->mclk) { in platform_clock_control() [all …]
|
D | cht_bsw_rt5645.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cht-bsw-rt5645.c - ASoc Machine driver for Intel Cherryview-based platforms 25 #include <sound/soc-acpi.h> 27 #include "../atom/sst-atom-controls.h" 28 #include "../common/soc-intel-quirks.h" 31 #define CHT_CODEC_DAI1 "rt5645-aif1" 32 #define CHT_CODEC_DAI2 "rt5645-aif2" 70 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 71 struct snd_soc_card *card = dapm->card; in platform_clock_control() 81 dev_err(card->dev, "Codec dai not found; Unable to set platform clock\n"); in platform_clock_control() [all …]
|
/Linux-v5.10/Documentation/sound/soc/ |
D | dapm.rst | 11 such, can easily co-exist with the other PM systems. 60 Audio DAPM widgets fall into a number of types:- 117 ASRC 120 Widget that encodes audio data from one format (usually PCM) to another 121 usually more compressed format. 123 Widget that decodes audio data from a compressed format to an 124 uncompressed format like PCM. 127 (Widgets are defined in include/sound/soc-dapm.h) 130 There are convenience macros defined in soc-dapm.h that can be used to quickly 138 --------------------- [all …]
|
/Linux-v5.10/sound/soc/qcom/ |
D | sdm845.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <uapi/linux/input-event-codes.h> 52 struct sdm845_snd_data *pdata = snd_soc_card_get_drvdata(rtd->card); in sdm845_slim_snd_hw_params() 60 substream->stream); in sdm845_slim_snd_hw_params() 61 if (sruntime != ERR_PTR(-ENOTSUPP)) in sdm845_slim_snd_hw_params() 62 pdata->sruntime[cpu_dai->id] = sruntime; in sdm845_slim_snd_hw_params() 67 if (ret != 0 && ret != -ENOTSUPP) { in sdm845_slim_snd_hw_params() 70 } else if (ret == -ENOTSUPP) { in sdm845_slim_snd_hw_params() 75 if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) in sdm845_slim_snd_hw_params() 100 dev_err(rtd->dev, "%s: invalid param format 0x%x\n", in sdm845_tdm_snd_hw_params() [all …]
|