/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 14 Smart CODEC and Amp devices. It allows the connection of most Cirrus 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 [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 19 between CODECs so refer to the datasheet for the CODEC for further information 30 Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 33 pin-settings: 40 '-pins$': 43 - $ref: pincfg-node.yaml# 44 - $ref: pinmux-node.yaml# [all …]
|
/linux/sound/soc/sunxi/ |
H A D | sun8i-codec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * This driver supports the digital controls for the internal codec 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() [all …]
|
/linux/Documentation/devicetree/bindings/mfd/ |
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 14 Smart CODEC and Amp devices. It allows the connection of most Cirrus 15 Logic devices on mini-cards, as well as allowing connection of 25 [2] include/dt-bindings/pinctrl/lochnagar.h 26 [3] include/dt-bindings/clock/lochnagar.h 28 And these documents for the required sub-node binding details: 35 - if: [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# 7 title: Cirrus Logic Madera class audio CODECs Multi-Functional Device 10 - patches@opensource.cirrus.com 23 - $ref: /schemas/pinctrl/cirrus,madera.yaml# 24 - $ref: /schemas/regulator/wlf,arizona.yaml# 25 - $ref: /schemas/sound/cirrus,madera.yaml# 26 - if: 31 - cirrus,cs47l85 [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 …]
|
/linux/sound/soc/sdw_utils/ |
H A D | soc_sdw_utils.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * soc-sdw-utils.c - common SoundWire machine driver helper functions 66 .dai_name = "rt700-aif1", 84 .dai_name = "rt711-sdca-aif1", 104 .dai_name = "rt711-aif1", 124 .dai_name = "rt712-sdca-aif1", 137 .dai_name = "rt712-sdca-aif2", 151 .dai_name = "rt712-sdca-aif3", 165 .dai_name = "rt712-sdca-dmic-aif1", 179 .dai_name = "rt712-sdca-aif1", [all …]
|
/linux/sound/soc/codecs/ |
H A D | cs47l35.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // ALSA SoC Audio driver for CS47L35 codec 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() [all …]
|
H A D | cs47l15.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // ALSA SoC Audio driver for CS47L15 codec 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() [all …]
|
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 | cs47l92.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // ALSA SoC Audio driver for CS47L92 codec 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() [all …]
|
H A D | wm8998.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8998.c -- ALSA SoC Audio driver for WM8998 codecs 41 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in wm8998_asrc_ev() 57 dev_warn(component->dev, in wm8998_asrc_ev() 60 return -EINVAL; in wm8998_asrc_ev() 64 dev_err(component->dev, in wm8998_asrc_ev() 67 return -EINVAL; in wm8998_asrc_ev() 77 val -= 0x8; in wm8998_asrc_ev() 81 dev_warn(component->dev, in wm8998_asrc_ev() 84 return -EINVAL; in wm8998_asrc_ev() [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 | cs47l85.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // ALSA SoC Audio driver for CS47L85 codec 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() [all …]
|
H A D | cs47l90.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // ALSA SoC Audio driver for CS47L90 codec 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() [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 | wm5100.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm5100.c -- WM5100 ALSA SoC Audio driver 5 * Copyright 2011-2 Wolfson Microelectronics plc 51 /* codec private data */ 130 dev_err(component->dev, "Unsupported sample rate: %dHz\n", rate); in wm5100_alloc_sr() 131 return -EINVAL; in wm5100_alloc_sr() 135 if ((wm5100->sysclk % rate) == 0) { in wm5100_alloc_sr() 137 sr_free = -1; in wm5100_alloc_sr() 139 if (!wm5100->sr_ref[i] && sr_free == -1) { in wm5100_alloc_sr() 149 wm5100->sr_ref[i]++; in wm5100_alloc_sr() [all …]
|
H A D | wcd9335.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright (c) 2015-2016, The Linux Foundation. All rights reserved. 3 // Copyright (c) 2017-2018, Linaro Limited 19 #include <sound/soc-dapm.h> 26 #include "wcd-clsh-v2.h" 28 #include <dt-bindings/sound/qcom,wcd9335.h> 99 #define WCD9335_CALCULATE_VOUT_D(req_mv) (((req_mv - 650) * 10) / 25) 357 "vdd-buck", "vdd-buck-sido", "vdd-tx", "vdd-rx", "vdd-io", 409 {24000, -EINVAL},/* 24K */ 551 "Class H Invalid", "Class-H Hi-Fi", "Class-H Low Power", "Class-AB", [all …]
|
H A D | lpass-rx-macro.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. 14 #include <sound/soc-dapm.h> 17 #include <linux/clk-provider.h> 19 #include "lpass-macro-common.h" 162 #define CDC_RX_RXn_RX_PATH_CTL(rx, n) (0x0400 + rx->rxn_reg_stride * n) 170 #define CDC_RX_RXn_RX_PATH_CFG0(rx, n) (0x0404 + rx->rxn_reg_stride * n) 177 #define CDC_RX_RXn_RX_PATH_CFG1(rx, n) (0x0408 + rx->rxn_reg_stride * n) 181 #define CDC_RX_RXn_RX_PATH_CFG2(rx, n) (0x040C + rx->rxn_reg_stride * n) 184 #define CDC_RX_RXn_RX_PATH_CFG3(rx, n) (0x0410 + rx->rxn_reg_stride * n) [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/drivers/mfd/ |
H A D | cs47l24-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Data tables for CS47L24 codec 29 return regmap_register_patch(arizona->regmap, in cs47l24_patch() 183 { 0x00000008, 0x0019 }, /* R8 - Ctrl IF SPI CFG 1 */ 184 { 0x00000020, 0x0000 }, /* R32 - Tone Generator 1 */ 185 { 0x00000021, 0x1000 }, /* R33 - Tone Generator 2 */ 186 { 0x00000022, 0x0000 }, /* R34 - Tone Generator 3 */ 187 { 0x00000023, 0x1000 }, /* R35 - Tone Generator 4 */ 188 { 0x00000024, 0x0000 }, /* R36 - Tone Generator 5 */ 189 { 0x00000030, 0x0000 }, /* R48 - PWM Drive 1 */ [all …]
|
H A D | cs47l92-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Regmap tables for CS47L92 codec 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 */ [all …]
|
H A D | cs47l15-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Regmap tables for CS47L15 codec 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 */ [all …]
|
H A D | cs47l35-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Regmap tables for CS47L35 codec 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 */ [all …]
|
H A D | arizona-core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 40 mutex_lock(&arizona->clk_lock); in arizona_clk32k_enable() 42 arizona->clk32k_ref++; in arizona_clk32k_enable() 44 if (arizona->clk32k_ref == 1) { in arizona_clk32k_enable() 45 switch (arizona->pdata.clk32k_src) { in arizona_clk32k_enable() 47 ret = pm_runtime_resume_and_get(arizona->dev); in arizona_clk32k_enable() 50 ret = clk_prepare_enable(arizona->mclk[ARIZONA_MCLK1]); in arizona_clk32k_enable() 52 pm_runtime_put_sync(arizona->dev); in arizona_clk32k_enable() 57 ret = clk_prepare_enable(arizona->mclk[ARIZONA_MCLK2]); in arizona_clk32k_enable() 63 ret = regmap_update_bits(arizona->regmap, ARIZONA_CLOCK_32K_1, in arizona_clk32k_enable() [all …]
|