| /linux/Documentation/devicetree/bindings/pinctrl/ |
| H A 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 - patches@opensource.cirrus.com 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 …]
|
| H A 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 - patches@opensource.cirrus.com 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/sound/soc/codecs/ |
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A 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 …]
|
| H A D | wm8996.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * wm8996.c - WM8996 audio codec interface 5 * Copyright 2011-2 Wolfson Microelectronics PLC. 108 regcache_mark_dirty(wm8996->regmap); \ 299 static const DECLARE_TLV_DB_SCALE(sidetone_tlv, -3600, 150, 0); 300 static const DECLARE_TLV_DB_SCALE(digital_tlv, -720 1738 int dsp = 0; wm8996_hw_params() local [all...] |
| H A 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 …]
|
| H A D | rt5677.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5677.c -- RT5677 ALSA SoC audio codec driver 29 #include <sound/soc-dapm.h> 35 #include "rt5677-spi.h" 303 case RT5677_PWR_ANLG2: /* Modified by DSP firmware */ in rt5677_volatile_register() 314 case RT5677_GPIO_CTRL1: /* Modified by DSP firmware */ in rt5677_volatile_register() 315 case RT5677_GPIO_CTRL2: /* Modified by DSP firmware */ in rt5677_volatile_register() 552 * rt5677_dsp_mode_i2c_write_addr - Write value to address on DSP mode. 563 struct snd_soc_component *component = rt5677->component; in rt5677_dsp_mode_i2c_write_addr() 566 mutex_lock(&rt5677->dsp_cmd_lock); in rt5677_dsp_mode_i2c_write_addr() [all …]
|
| /linux/sound/soc/samsung/ |
| H A D | bells.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 #include <sound/soc-dapm.h> 58 struct bells_drvdata *bells = card->drvdata; in bells_set_bias_level() 61 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[DAI_DSP_CODEC]); in bells_set_bias_level() 63 component = codec_dai->component; in bells_set_bias_level() 65 if (dapm->dev != codec_dai->dev) in bells_set_bias_level() 70 if (dapm->bias_level != SND_SOC_BIAS_STANDBY) in bells_set_bias_level() 76 bells->sysclk_rate); in bells_set_bias_level() 80 if (bells->asyncclk_rate) { in bells_set_bias_level() 84 bells->asyncclk_rate); in bells_set_bias_level() [all …]
|
| H A 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() 127 /* Re-run DAPM to make sure we're using the correct mic bias */ in speyside_set_polarity() 146 struct snd_soc_component *component = dai->component; in speyside_wm8996_init() 158 speyside_hpsel_gpio = devm_gpiod_get(rtd->card->dev, in speyside_wm8996_init() [all …]
|
| /linux/sound/soc/sunxi/ |
| H A 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 ret = clk_prepare_enable(scodec->clk_bus); in sun8i_codec_runtime_resume() 257 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume() 259 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume() 272 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend() 273 regcache_mark_dirty(scodec->regmap); in sun8i_codec_runtime_suspend() 275 clk_disable_unprepare(scodec->clk_bus); in sun8i_codec_runtime_suspend() [all …]
|
| /linux/drivers/pinctrl/cirrus/ |
| H A 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 …]
|
| /linux/sound/soc/intel/boards/ |
| H A 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" 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() 80 dev_err(card->dev, "Codec dai not found; Unable to set platform clock\n"); in platform_clock_control() [all …]
|
| H A D | bytcr_rt5651.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * bytcr_rt5651.c - ASoc Machine driver for Intel Byt CR platform 29 #include <sound/soc-acpi.h> 31 #include "../atom/sst-atom-controls.h" 32 #include "../common/soc-intel-quirk [all...] |
| H A D | bytcr_rt5640.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * byt_cr_dpcm_rt5640.c - ASoc Machine driver for Intel Byt CR platform 30 #include <sound/soc-acpi.h> 31 #include <dt-bindings/sound/rt5640.h> 33 #include "../atom/sst-atom-controls.h" 34 #include "../common/soc-inte [all...] |
| /linux/drivers/mfd/ |
| H A D | cs47l15-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2016-2019 Cirrus Logic, Inc. and 35 ret = regmap_register_patch(madera->regmap, in cs47l15_patch() 39 dev_err(madera->dev, in cs47l15_patch() 40 "Error in applying 16-bit patch: %d\n", ret); in cs47l15_patch() 49 { 0x00000020, 0x0000 }, /* R32 (0x20) - Tone Generator 1 */ 50 { 0x00000021, 0x1000 }, /* R33 (0x21) - Tone Generator 2 */ 51 { 0x00000022, 0x0000 }, /* R34 (0x22) - Tone Generator 3 */ 52 { 0x00000023, 0x1000 }, /* R35 (0x23) - Tone Generator 4 */ 53 { 0x00000024, 0x0000 }, /* R36 (0x24) - Tone Generator 5 */ [all …]
|
| H A D | cs47l92-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2016-2019 Cirrus Logic, Inc. and 96 ret = regmap_register_patch(madera->regmap, in cs47l92_patch() 100 dev_err(madera->dev, in cs47l92_patch() 101 "Error in applying 16-bit patch: %d\n", ret); in cs47l92_patch() 105 ret = regmap_register_patch(madera->regmap_32bit, in cs47l92_patch() 109 dev_err(madera->dev, in cs47l92_patch() 110 "Error in applying 32-bit patch: %d\n", ret); in cs47l92_patch() 119 { 0x00000020, 0x0000 }, /* R32 (0x20) - Tone Generator 1 */ 120 { 0x00000021, 0x1000 }, /* R33 (0x21) - Tone Generator 2 */ [all …]
|
| H A D | cs47l35-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2015-2017 Cirrus Logic 55 ret = regmap_register_patch(madera->regmap, cs47l35_reva_16_patch, in cs47l35_patch() 58 dev_err(madera->dev, "Error applying patch: %d\n", ret); in cs47l35_patch() 65 { 0x00000020, 0x0000 }, /* R32 (0x20) - Tone Generator 1 */ 66 { 0x00000021, 0x1000 }, /* R33 (0x21) - Tone Generator 2 */ 67 { 0x00000022, 0x0000 }, /* R34 (0x22) - Tone Generator 3 */ 68 { 0x00000023, 0x1000 }, /* R35 (0x23) - Tone Generator 4 */ 69 { 0x00000024, 0x0000 }, /* R36 (0x24) - Tone Generator 5 */ 70 { 0x00000030, 0x0000 }, /* R48 (0x30) - PWM Drive 1 */ [all …]
|
| H A D | cs47l90-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2015-2017 Cirrus Logic 58 ret = regmap_register_patch(madera->regmap, in cs47l90_patch() 62 dev_err(madera->dev, in cs47l90_patch() 63 "Error in applying 16-bit patch: %d\n", ret); in cs47l90_patch() 72 { 0x00000020, 0x0000 }, /* R32 (0x20) - Tone Generator 1 */ 73 { 0x00000021, 0x1000 }, /* R33 (0x21) - Tone Generator 2 */ 74 { 0x00000022, 0x0000 }, /* R34 (0x22) - Tone Generator 3 */ 75 { 0x00000023, 0x1000 }, /* R35 (0x23) - Tone Generator 4 */ 76 { 0x00000024, 0x0000 }, /* R36 (0x24) - Tone Generator 5 */ [all …]
|
| H A D | cs47l85-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2015-2017 Cirrus Logic 318 switch (madera->rev) { in cs47l85_patch() 336 ret = regmap_register_patch(madera->regmap, patch16, num16); in cs47l85_patch() 338 dev_err(madera->dev, in cs47l85_patch() 339 "Error in applying 16-bit patch: %d\n", ret); in cs47l85_patch() 343 ret = regmap_register_patch(madera->regmap_32bit, patch32, num32); in cs47l85_patch() 345 dev_err(madera->dev, in cs47l85_patch() 346 "Error in applying 32-bit patch: %d\n", ret); in cs47l85_patch() 355 { 0x00000020, 0x0000 }, /* R32 (0x20) - Tone Generator 1 */ [all …]
|