/linux-6.14.4/Documentation/devicetree/bindings/pinctrl/ |
D | cirrus,lochnagar.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - [email protected] 15 Logic devices on mini-cards, as well as allowing connection of various 26 [2] Pinctrl: ../pinctrl/pinctrl-bindings.txt 29 [3] include/dt-bindings/pinctrl/lochnagar.h 37 - cirrus,lochnagar-pinctrl 39 gpio-controller: true 41 '#gpio-cells': [all …]
|
D | cirrus,madera.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - [email protected] 30 Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 33 pin-settings: 40 '-pins$': 43 - $ref: pincfg-node.yaml# 44 - $ref: pinmux-node.yaml# 49 enum: [ aif1, aif2, aif3, aif4, mif1, mif2, mif3, pdmspk1, [all …]
|
/linux-6.14.4/sound/soc/codecs/ |
D | adau1373.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Author: Lars-Peter Clausen <[email protected]> 25 #include "adau-utils.h" 343 0, 7, TLV_DB_SCALE_ITEM(-7900, 400, 1), 344 8, 15, TLV_DB_SCALE_ITEM(-4700, 300, 0), 345 16, 23, TLV_DB_SCALE_ITEM(-2300, 200, 0), 346 24, 31, TLV_DB_SCALE_ITEM(-700, 100, 0) 349 static const DECLARE_TLV_DB_MINMAX(adau1373_digital_tlv, -9563, 0); 350 static const DECLARE_TLV_DB_SCALE(adau1373_in_pga_tlv, -1300, 100, 1); 351 static const DECLARE_TLV_DB_SCALE(adau1373_ep_tlv, -600, 600, 1); [all …]
|
D | cs47l24.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cs47l24.h -- ALSA SoC Audio driver for Cirrus Logic CS47L24 33 #define DRV_NAME "cs47l24-codec" 62 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in cs47l24_adsp_power_ev() 63 struct arizona *arizona = dev_get_drvdata(component->dev->parent); in cs47l24_adsp_power_ev() 67 ret = regmap_read(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, &v); in cs47l24_adsp_power_ev() 69 dev_err(component->dev, "Failed to read SYSCLK state: %d\n", ret); in cs47l24_adsp_power_ev() 80 static DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); 81 static DECLARE_TLV_DB_SCALE(digital_tlv, -6400, 50, 0); 82 static DECLARE_TLV_DB_SCALE(noise_tlv, -13200, 600, 0); [all …]
|
D | cs47l35.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 // Copyright (C) 2015-2019 Cirrus Logic, Inc. and 23 #include <linux/irqchip/irq-madera.h> 33 #define DRV_NAME "cs47l35-codec" 90 snd_soc_dapm_to_component(w->dapm); in cs47l35_adsp_power_ev() 92 struct madera_priv *priv = &cs47l35->core; in cs47l35_adsp_power_ev() 93 struct madera *madera = priv->madera; in cs47l35_adsp_power_ev() 97 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_1, &freq); in cs47l35_adsp_power_ev() 99 dev_err(madera->dev, in cs47l35_adsp_power_ev() 109 ret = madera_set_adsp_clk(&cs47l35->core, w->shift, freq); in cs47l35_adsp_power_ev() [all …]
|
D | cs47l15.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 // Copyright (C) 2016-2019 Cirrus Logic, Inc. and 23 #include <linux/irqchip/irq-madera.h> 33 /* Mid-mode registers */ 39 #define DRV_NAME "cs47l15-codec" 72 snd_soc_dapm_to_component(w->dapm); in cs47l15_adsp_power_ev() 74 struct madera_priv *priv = &cs47l15->core; in cs47l15_adsp_power_ev() 75 struct madera *madera = priv->madera; in cs47l15_adsp_power_ev() 79 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_2, &freq); in cs47l15_adsp_power_ev() 81 dev_err(madera->dev, in cs47l15_adsp_power_ev() [all …]
|
D | cs47l85.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 // Copyright (C) 2015-2019 Cirrus Logic, Inc. and 23 #include <linux/irqchip/irq-madera.h> 30 #define DRV_NAME "cs47l85-codec" 114 snd_soc_dapm_to_component(w->dapm); in cs47l85_adsp_power_ev() 116 struct madera_priv *priv = &cs47l85->core; in cs47l85_adsp_power_ev() 117 struct madera *madera = priv->madera; in cs47l85_adsp_power_ev() 121 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_1, &freq); in cs47l85_adsp_power_ev() 123 dev_err(madera->dev, in cs47l85_adsp_power_ev() 133 ret = madera_set_adsp_clk(&cs47l85->core, w->shift, freq); in cs47l85_adsp_power_ev() [all …]
|
D | cs47l90.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 // Copyright (C) 2015-2019 Cirrus Logic, Inc. and 23 #include <linux/irqchip/irq-madera.h> 30 #define DRV_NAME "cs47l90-codec" 114 snd_soc_dapm_to_component(w->dapm); in cs47l90_adsp_power_ev() 116 struct madera_priv *priv = &cs47l90->core; in cs47l90_adsp_power_ev() 117 struct madera *madera = priv->madera; in cs47l90_adsp_power_ev() 121 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_2, &freq); in cs47l90_adsp_power_ev() 123 dev_err(madera->dev, in cs47l90_adsp_power_ev() 130 ret = madera_set_adsp_clk(&cs47l90->core, w->shift, freq); in cs47l90_adsp_power_ev() [all …]
|
D | wm5110.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm5110.c -- WM5110 ALSA SoC Audio driver 35 #define DRV_NAME "wm5110-codec" 161 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in wm5110_sysclk_ev() 162 struct arizona *arizona = dev_get_drvdata(component->dev->parent); in wm5110_sysclk_ev() 163 struct regmap *regmap = arizona->regmap; in wm5110_sysclk_ev() 167 switch (arizona->rev) { in wm5110_sysclk_ev() 198 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in wm5110_adsp_power_ev() 199 struct arizona *arizona = dev_get_drvdata(component->dev->parent); in wm5110_adsp_power_ev() 203 ret = regmap_read(arizona->regmap, ARIZONA_SYSTEM_CLOCK_1, &v); in wm5110_adsp_power_ev() [all …]
|
D | cs47l92.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 // Copyright (C) 2016-2019 Cirrus Logic, Inc. and 23 #include <linux/irqchip/irq-madera.h> 33 #define DRV_NAME "cs47l92-codec" 60 struct madera_priv *priv = &cs47l92->core; in cs47l92_put_demux() 61 struct madera *madera = priv->madera; in cs47l92_put_demux() 62 struct soc_enum *e = (struct soc_enum *)kcontrol->private_value; in cs47l92_put_demux() 67 if (ucontrol->value.enumerated.item[0] > e->items - 1) in cs47l92_put_demux() 68 return -EINVAL; in cs47l92_put_demux() 70 mux = ucontrol->value.enumerated.item[0]; in cs47l92_put_demux() [all …]
|
D | wm5102.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm5102.c -- WM5102 ALSA SoC Audio driver 34 #define DRV_NAME "wm5102-codec" 42 static DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); 43 static DECLARE_TLV_DB_SCALE(digital_tlv, -6400, 50, 0); 44 static DECLARE_TLV_DB_SCALE(noise_tlv, -13200, 600, 0); 45 static DECLARE_TLV_DB_SCALE(ng_tlv, -10200, 600, 0); 583 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in wm5102_sysclk_ev() 584 struct arizona *arizona = dev_get_drvdata(component->dev->parent); in wm5102_sysclk_ev() 585 struct regmap *regmap = arizona->regmap; in wm5102_sysclk_ev() [all …]
|
D | wm8903.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8903.c -- WM8903 ALSA SoC Audio driver 5 * Copyright 2008-12 Wolfson Microelectronics 6 * Copyright 2011-2012 NVIDIA, Inc. 11 * - TDM mode configuration. 41 { 4, 0x0018 }, /* R4 - Bias Control 0 */ 42 { 5, 0x0000 }, /* R5 - VMID Control 0 */ 43 { 6, 0x0000 }, /* R6 - Mic Bias Control 0 */ 44 { 8, 0x0001 }, /* R8 - Analogue DAC 0 */ 45 { 10, 0x0001 }, /* R10 - Analogue ADC 0 */ [all …]
|
D | rt5616.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5616.c -- RT5616 ALSA SoC audio codec driver 22 #include <sound/soc-dapm.h> 287 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 288 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 289 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 290 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 351 val = snd_soc_component_read(snd_soc_dapm_to_component(source->dapm), RT5616_GLB_CLK); in is_sys_clk_from_pll() 466 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in rt5616_adc_event() 490 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in rt5616_charge_pump_event() [all …]
|
D | rt5514.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5514.c -- RT5514 ALSA SoC audio codec driver 24 #include <sound/soc-dapm.h> 31 #include "rt5514-spi.h" 120 regmap_write(rt5514->i2c_regmap, 0x18002000, 0x000010ec); in rt5514_enable_dsp_prepare() 122 regmap_write(rt5514->i2c_regmap, 0x18002200, 0x00028604); in rt5514_enable_dsp_prepare() 124 regmap_write(rt5514->i2c_regmap, 0xfafafafa, 0x00000001); in rt5514_enable_dsp_prepare() 125 /* mini-core reset */ in rt5514_enable_dsp_prepare() 126 regmap_write(rt5514->i2c_regmap, 0x18002f00, 0x0005514b); in rt5514_enable_dsp_prepare() 127 regmap_write(rt5514->i2c_regmap, 0x18002f00, 0x00055149); in rt5514_enable_dsp_prepare() [all …]
|
D | wm8900.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8900.c -- WM8900 ALSA Soc Audio driver 10 * - Tristating. 11 * - TDM. 12 * - Jack detect. 13 * - FLL source configuration, currently only MCLK is supported. 224 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in wm8900_hp_event() 286 static const DECLARE_TLV_DB_SCALE(out_pga_tlv, -5700, 100, 0); 288 static const DECLARE_TLV_DB_SCALE(out_mix_tlv, -1500, 300, 0); 290 static const DECLARE_TLV_DB_SCALE(in_boost_tlv, -1200, 600, 0); [all …]
|
/linux-6.14.4/Documentation/sound/soc/ |
D | dpcm.rst | 10 digital audio to I2S DAI0, I2S DAI1 or PDM DAI2. This is useful for on SoC DSP 15 graph representing the DSP internal audio paths and uses the mixer settings to 18 DPCM re-uses all the existing component codec, platform and DAI drivers without 22 Phone Audio System with SoC based DSP 23 ------------------------------------- 26 document for all examples :- 29 | Front End PCMs | SoC DSP | Back End DAIs | Audio devices | 32 PCM0 <------------> * * <----DAI0-----> Codec Headset 34 PCM1 <------------> * * <----DAI1-----> Codec Speakers 35 * DSP * [all …]
|
D | dapm.rst | 11 management frameworks and, as such, can easily co-exist with them. 32 The graph for the STM32MP1-DK1 sound card is shown in picture: 34 .. kernel-figure:: dapm-graph.svg 39 `tools/sound/dapm-graph` utility. 124 Inter widget audio data buffer within a DSP. 126 DSP internal scheduler that schedules component/pipeline processing 131 Sample Rate Converter within DSP or CODEC 133 Asynchronous Sample Rate Converter within DSP or CODEC 142 (Widgets are defined in include/sound/soc-dapm.h) 145 There are convenience macros defined in soc-dapm.h that can be used to quickly [all …]
|
/linux-6.14.4/sound/soc/samsung/ |
D | bells.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 #include <sound/soc-dapm.h> 59 struct bells_drvdata *bells = card->drvdata; in bells_set_bias_level() 62 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[DAI_DSP_CODEC]); in bells_set_bias_level() 64 component = codec_dai->component; in bells_set_bias_level() 66 if (dapm->dev != codec_dai->dev) in bells_set_bias_level() 71 if (dapm->bias_level != SND_SOC_BIAS_STANDBY) in bells_set_bias_level() 77 bells->sysclk_rate); in bells_set_bias_level() 81 if (bells->asyncclk_rate) { in bells_set_bias_level() 85 bells->asyncclk_rate); in bells_set_bias_level() [all …]
|
D | speyside.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 #include <sound/soc-dapm.h> 27 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[1]); in speyside_set_bias_level() 30 if (dapm->dev != codec_dai->dev) in speyside_set_bias_level() 63 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[1]); in speyside_set_bias_level_post() 66 if (dapm->dev != codec_dai->dev) in speyside_set_bias_level_post() 71 if (card->dapm.bias_level == SND_SOC_BIAS_STANDBY) { in speyside_set_bias_level_post() 93 card->dapm.bias_level = level; in speyside_set_bias_level_post() 128 /* Re-run DAPM to make sure we're using the correct mic bias */ in speyside_set_polarity() 147 struct snd_soc_component *component = dai->component; in speyside_wm8996_init() [all …]
|
/linux-6.14.4/sound/soc/intel/boards/ |
D | bdw-rt5677.c | 1 // SPDX-License-Identifier: GPL-2.0-only 18 #include <sound/soc-acpi.h> 30 struct snd_soc_dapm_context *dapm = w->dapm; in bdw_rt5677_event_hp() 31 struct snd_soc_card *card = dapm->card; in bdw_rt5677_event_hp() 37 gpiod_set_value_cansleep(bdw_rt5677->gpio_hp_en, in bdw_rt5677_event_hp() 72 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 73 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 74 {"DSP Capture", NULL, "DSP Buffer"}, 76 /* DSP Clock Connections */ 77 { "DSP Buffer", NULL, "SSP0 CODEC IN" }, [all …]
|
D | bdw-rt5650.c | 1 // SPDX-License-Identifier: GPL-2.0-only 17 #include <sound/soc-acpi.h> 57 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 58 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 91 /* The ADSP will convert the FE rate to 48k, max 4-channels */ in broadwell_ssp0_fixup() 92 rate->min = rate->max = 48000; in broadwell_ssp0_fixup() 93 chan->min = 2; in broadwell_ssp0_fixup() 94 chan->max = 4; in broadwell_ssp0_fixup() 116 dev_err(rtd->dev, "can't set codec pll: %d\n", ret); in bdw_rt5650_hw_params() 127 dev_err(rtd->dev, "can't set codec sysclk configuration\n"); in bdw_rt5650_hw_params() [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" 47 #define CHT_RT5645_SSP2_AIF2 BIT(16) /* default is using AIF1 */ 69 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 70 struct snd_soc_card *card = dapm->card; in platform_clock_control() [all …]
|
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" 24 #include "../common/soc-intel-quirks.h" 29 #define CHT_CODEC_DAI "rt5670-aif1" 53 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 54 struct snd_soc_card *card = dapm->card; in platform_clock_control() 61 dev_err(card->dev, "Codec dai not found; Unable to set platform clock\n"); in platform_clock_control() 62 return -EIO; in platform_clock_control() [all …]
|
/linux-6.14.4/sound/soc/sunxi/ |
D | sun8i-codec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * (C) Copyright 2010-2016 9 * Mylène Josserand <mylene.josserand@free-electrons.com> 27 #include <sound/soc-dapm.h> 251 if (scodec->clk_bus) { in sun8i_codec_runtime_resume() 252 ret = clk_prepare_enable(scodec->clk_bus); in sun8i_codec_runtime_resume() 259 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume() 261 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume() 274 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend() 275 regcache_mark_dirty(scodec->regmap); in sun8i_codec_runtime_suspend() [all …]
|
/linux-6.14.4/drivers/pinctrl/cirrus/ |
D | pinctrl-lochnagar.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (c) 2017-2018 Cirrus Logic, Inc. and 21 #include <linux/pinctrl/pinconf-generic.h> 30 #include <dt-bindings/pinctrl/lochnagar.h> 32 #include "../pinctrl-utils.h" 36 #define LN_CDC_AIF1_STR "codec-aif1" 37 #define LN_CDC_AIF2_STR "codec-aif2" 38 #define LN_CDC_AIF3_STR "codec-aif3" 39 #define LN_DSP_AIF1_STR "dsp-aif1" 40 #define LN_DSP_AIF2_STR "dsp-aif2" [all …]
|