/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 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() [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 4 * Cherrytrail and Braswell, with RT5645 codec. 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() [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-quirks.h" 80 /* jack-detect-source + inv + dmic-en + ovcd-th + -sf + terminating entry */ 93 /* Default: jack-detect on JD1_1, internal mic on in2, headsetmic on in3 */ 97 static int quirk_override = -1; 99 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 112 dev_info(dev, "quirk realtek,jack-detect-source %ld\n", in log_quirks() [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-intel-quirks.h" 36 #define BYT_RT5640_FALLBACK_CODEC_DEV_NAME "i2c-rt5640" 77 #define BYT_RT5640_DIFF_MIC BIT(18) /* default is single-ended */ 98 /* in-diff or dmic-pin + jdsrc + ovcd-th + -sf + jd-inv + terminating entry */ 112 static int quirk_override = -1; [all …]
|
H A D | sof_rt5682.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright(c) 2019-2020 Intel Corporation. 5 * Intel SOF Machine Driver with Realtek rt5682 Codec 6 * and speaker codec MAX98357A or RT1015. 22 #include <sound/soc-acpi.h> 26 #include "../common/soc-intel-quirks.h" 31 /* Driver-specific board quirks: from bit 0 to 7 */ 40 sof_rt5682_quirk = (unsigned long)id->driver_data; in sof_rt5682_quirk_cb() 57 DMI_MATCH(DMI_PRODUCT_NAME, "UP-CHT01"), 74 DMI_MATCH(DMI_OEM_STRING, "AUDIO-MAX98373_ALC5682I_I2S_UP4"), [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 65 .dai_name = "rt700-aif1", 83 .dai_name = "rt711-sdca-aif1", 103 .dai_name = "rt711-aif1", 123 .dai_name = "rt712-sdca-aif1", 136 .dai_name = "rt712-sdca-aif2", 149 .dai_name = "rt712-sdca-aif3", 163 .dai_name = "rt712-sdca-dmic-aif1", 177 .dai_name = "rt712-sdca-aif1", [all …]
|
/linux/Documentation/devicetree/bindings/sound/ |
H A D | mt8173-rt5650.txt | 4 - compatible : "mediatek,mt8173-rt5650" 5 - mediatek,audio-codec: the phandles of rt5650 codecs 7 - mediatek,platform: the phandle of MT8173 ASoC platform 10 - codec-capture : the subnode of rt5650 codec capture 11 Required codec-capture subnode properties: 12 - sound-dai: audio codec dai name on capture path 13 <&rt5650 0> : Default setting. Connect rt5650 I2S1 for capture. (dai_name = rt5645-aif1) 14 <&rt5650 1> : Connect rt5650 I2S2 for capture. (dai_name = rt5645-aif2) 16 - mediatek,mclk: the MCLK source 23 compatible = "mediatek,mt8173-rt5650"; [all …]
|
/linux/sound/soc/samsung/ |
H A 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 …]
|
H A D | aries_wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 #include <linux/input-event-codes.h> 98 if (!gpiod_get_value(priv->gpio_headset_detect)) { in headset_det_irq_thread() 101 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() 105 time_left_ms -= 20; in headset_det_irq_thread() 109 ret = regulator_enable(priv->reg_headset_micbias); in headset_det_irq_thread() 113 gpiod_set_value(priv->gpio_earpath_sel, 1); in headset_det_irq_thread() 115 ret = iio_read_channel_processed(priv->adc, &adc); in headset_det_irq_thread() 127 ret = regulator_disable(priv->reg_headset_micbias); in headset_det_irq_thread() 133 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() [all …]
|
/linux/Documentation/devicetree/bindings/mfd/ |
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/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 | 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 | 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 | 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 | wm8997.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8997.c -- WM8997 ALSA SoC Audio driver 38 static DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); 39 static DECLARE_TLV_DB_SCALE(digital_tlv, -6400, 50, 0); 40 static DECLARE_TLV_DB_SCALE(noise_tlv, -13200, 600, 0); 41 static DECLARE_TLV_DB_SCALE(ng_tlv, -10200, 600, 0); 84 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in wm8997_sysclk_ev() 85 struct arizona *arizona = dev_get_drvdata(component->dev->parent); in wm8997_sysclk_ev() 86 struct regmap *regmap = arizona->regmap; in wm8997_sysclk_ev() 90 switch (arizona->rev) { in wm8997_sysclk_ev() [all …]
|
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 | 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 | wm9081.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm9081.c -- WM9081 ALSA SoC Audio driver 7 * Copyright 2009-12 Wolfson Microelectronics plc 30 { 2, 0x00B9 }, /* R2 - Analogue Lineout */ 31 { 3, 0x00B9 }, /* R3 - Analogue Speaker PGA */ 32 { 4, 0x0001 }, /* R4 - VMID Control */ 33 { 5, 0x0068 }, /* R5 - Bias Control 1 */ 34 { 7, 0x0000 }, /* R7 - Analogue Mixer */ 35 { 8, 0x0000 }, /* R8 - Anti Pop Control */ 36 { 9, 0x01DB }, /* R9 - Analogue Speaker 1 */ [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 | wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8994.c -- WM8994 ALSA SoC Audio driver 5 * Copyright 2009-12 Wolfson Microelectronics plc 114 struct wm8994 *control = wm8994->wm8994; in wm8958_micd_set_rate() 120 idle = !wm8994->jack_mic; in wm8958_micd_set_rate() 124 sysclk = wm8994->aifclk[1]; in wm8958_micd_set_rate() 126 sysclk = wm8994->aifclk[0]; in wm8958_micd_set_rate() 128 if (control->pdata.micd_rates) { in wm8958_micd_set_rate() 129 rates = control->pdata.micd_rates; in wm8958_micd_set_rate() 130 num_rates = control->pdata.num_micd_rates; in wm8958_micd_set_rate() [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 20 #include <linux/pinctrl/pinconf-generic.h> 29 #include <dt-bindings/pinctrl/lochnagar.h> 31 #include "../pinctrl-utils.h" 35 #define LN_CDC_AIF1_STR "codec-aif1" 36 #define LN_CDC_AIF2_STR "codec-aif2" 37 #define LN_CDC_AIF3_STR "codec-aif3" 38 #define LN_DSP_AIF1_STR "dsp-aif1" 39 #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 …]
|