/openbmc/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 …]
|
/openbmc/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> 23 #include <sound/soc-dapm.h> 200 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume() 202 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume() 215 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend() 216 regcache_mark_dirty(scodec->regmap); in sun8i_codec_runtime_suspend() 252 return -EINVAL; in sun8i_codec_get_hw_rate() [all …]
|
/openbmc/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" 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() [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_sdw.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * sof_sdw - ASOC Machine driver for Intel SoundWire platforms 14 #include <sound/soc-acpi.h> 19 static int quirk_override = -1; 21 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 33 dev_dbg(dev, "quirk realtek,jack-detect-source %ld\n", in log_quirks() 50 sof_sdw_quirk = (unsigned long)id->driver_data; in sof_sdw_quirk_cb() 188 * (e.g. 15-eb1xxx, 14t-ea000 or 13-aw2xxx) 257 /* TigerLake-SDCA devices */ 441 DMI_MATCH(DMI_PRODUCT_NAME, "OMEN by HP Gaming Laptop 16-k0xxx"), [all …]
|
/openbmc/u-boot/drivers/sound/ |
H A D | wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0+ 35 /* codec private data */ 37 enum wm8994_type type; /* codec type of wolfson */ 84 return dm_i2c_write(priv->dev, reg, val, 2); in wm8994_i2c_write() 94 * @return int value 0 for success, -1 in case of error. 102 ret = dm_i2c_read(priv->dev, reg, val, 1); in wm8994_i2c_read() 106 return -1; in wm8994_i2c_read() 120 * @param reg codec register 134 return -1; in wm8994_bic_or() 152 * @return -1 for error and 0 Success. [all …]
|
/openbmc/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 …]
|
/openbmc/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+ 4 #include <linux/input-event-codes.h> 99 if (!gpiod_get_value(priv->gpio_headset_detect)) { in headset_det_irq_thread() 102 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() 106 time_left_ms -= 20; in headset_det_irq_thread() 110 ret = regulator_enable(priv->reg_headset_micbias); in headset_det_irq_thread() 114 gpiod_set_value(priv->gpio_earpath_sel, 1); in headset_det_irq_thread() 116 ret = iio_read_channel_processed(priv->adc, &adc); in headset_det_irq_thread() 128 ret = regulator_disable(priv->reg_headset_micbias); in headset_det_irq_thread() 134 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() [all …]
|
/openbmc/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 …]
|
/openbmc/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 | 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 | 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 | adau1373.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Analog Devices ADAU1373 Audio Codec drive 6 * Author: Lars-Peter Clausen <lars@metafoo.de> 24 #include "adau-utils.h" 323 0, 7, TLV_DB_SCALE_ITEM(-7900, 400, 1), 324 8, 15, TLV_DB_SCALE_ITEM(-4700, 300, 0), 325 16, 23, TLV_DB_SCALE_ITEM(-2300, 200, 0), 326 24, 31, TLV_DB_SCALE_ITEM(-700, 100, 0) 329 static const DECLARE_TLV_DB_MINMAX(adau1373_digital_tlv, -9563, 0); 330 static const DECLARE_TLV_DB_SCALE(adau1373_in_pga_tlv, -1300, 100, 1); [all …]
|
/openbmc/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 …]
|
/openbmc/linux/sound/soc/mediatek/mt8173/ |
H A D | mt8173-rt5650-rt5676.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650-rt5676.c -- MT8173 machine driver with RT5650/5676 codecs 90 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5676_init() 91 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_rt5676_init() 92 struct snd_soc_component *component_sub = asoc_rtd_to_codec(runtime, 1)->component; in mt8173_rt5650_rt5676_init() 117 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_rt5676_init() 152 SND_SOC_DAILINK_DEFS(codec, 154 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5645-aif1"), 155 COMP_CODEC(NULL, "rt5677-aif1")), 160 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "i2s-hifi")), [all …]
|
H A D | mt8173-rt5650.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650.c -- MT8173 machine driver with RT5650 codecs 116 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_init() 117 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_init() 118 const char *codec_capture_dai = asoc_rtd_to_codec(runtime, 1)->name; in mt8173_rt5650_init() 125 if (!strcmp(codec_capture_dai, "rt5645-aif1")) { in mt8173_rt5650_init() 129 } else if (!strcmp(codec_capture_dai, "rt5645-aif2")) { in mt8173_rt5650_init() 134 dev_warn(card->dev, in mt8173_rt5650_init() 135 "Only one dai codec found in DTS, enabled rt5645 AD filter\n"); in mt8173_rt5650_init() 150 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_init() [all …]
|