/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 …]
|
/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/sound/soc/codecs/ |
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 | max98373-i2c.c | 1 // SPDX-License-Identifier: GPL-2.0 123 struct snd_soc_component *component = codec_dai->component; in max98373_dai_set_fmt() 128 dev_dbg(component->dev, "%s: fmt 0x%08X\n", __func__, fmt); in max98373_dai_set_fmt() 137 dev_err(component->dev, "DAI invert mode unsupported\n"); in max98373_dai_set_fmt() 138 return -EINVAL; in max98373_dai_set_fmt() 141 regmap_update_bits(max98373->regmap, in max98373_dai_set_fmt() 161 return -EINVAL; in max98373_dai_set_fmt() 164 regmap_update_bits(max98373->regmap, in max98373_dai_set_fmt() 177 static int max98373_get_bclk_sel(int bclk) in max98373_get_bclk_sel() argument 182 if (bclk_sel_table[i] == bclk) in max98373_get_bclk_sel() [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, -7200, 75, 1); 301 static const DECLARE_TLV_DB_SCALE(out_digital_tlv, -1200, 150, 0); 302 static const DECLARE_TLV_DB_SCALE(out_tlv, -900, 75, 0); 303 static const DECLARE_TLV_DB_SCALE(spk_tlv, -900, 150, 0); 304 static const DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); [all …]
|
H A D | es8311.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * es8311.c -- es8311 ALSA SoC audio driver 38 static const DECLARE_TLV_DB_SCALE(es8311_adc_vol_tlv, -9550, 50, 0); 68 0, 1, TLV_DB_SCALE_ITEM(-3010, 600, 0), 69 2, 3, TLV_DB_SCALE_ITEM(-2060, 250, 0), 70 4, 5, TLV_DB_SCALE_ITEM(-1610, 160, 0), 71 6, 7, TLV_DB_SCALE_ITEM(-1320, 120, 0), 72 8, 9, TLV_DB_SCALE_ITEM(-1100, 90, 0), 73 10, 11, TLV_DB_SCALE_ITEM(-930, 80, 0), 74 12, 15, TLV_DB_SCALE_ITEM(-780, 60, 0), [all …]
|
H A D | max98520.c | 1 // SPDX-License-Identifier: GPL-2.0 72 struct snd_soc_component *component = codec_dai->component; in max98520_dai_set_fmt() 78 dev_dbg(component->dev, "%s: fmt 0x%08X\n", __func__, fmt); in max98520_dai_set_fmt() 87 dev_err(component->dev, "DAI invert mode unsupported\n"); in max98520_dai_set_fmt() 88 return -EINVAL; in max98520_dai_set_fmt() 91 regmap_update_bits(max98520->regmap, in max98520_dai_set_fmt() 111 return -EINVAL; in max98520_dai_set_fmt() 114 regmap_update_bits(max98520->regmap, in max98520_dai_set_fmt() 127 static int max98520_get_bclk_sel(int bclk) in max98520_get_bclk_sel() argument 132 if (bclk_sel_table[i] == bclk) in max98520_get_bclk_sel() [all …]
|
H A D | max98927.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * max98927.c -- MAX98927 ALSA Soc Audio driver 5 * Copyright (C) 2016-2017 Maxim Integrated Products 140 struct snd_soc_component *component = codec_dai->component; in max98927_dai_set_fmt() 147 dev_dbg(component->dev, "%s: fmt 0x%08X\n", __func__, fmt); in max98927_dai_set_fmt() 151 max98927->provider = false; in max98927_dai_set_fmt() 155 max98927->provider = true; in max98927_dai_set_fmt() 159 dev_err(component->dev, "DAI clock mode unsupported\n"); in max98927_dai_set_fmt() 160 return -EINVAL; in max98927_dai_set_fmt() 163 regmap_update_bits(max98927->regmap, MAX98927_R0021_PCM_MASTER_MODE, in max98927_dai_set_fmt() [all …]
|
H A D | max98390.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * max98390.c -- MAX98390 ALSA Soc Audio driver 165 struct snd_soc_component *component = codec_dai->component; in max98390_dai_set_fmt() 172 dev_dbg(component->dev, "%s: fmt 0x%08X\n", __func__, fmt); in max98390_dai_set_fmt() 179 max98390->provider = true; in max98390_dai_set_fmt() 183 dev_err(component->dev, "DAI clock mode unsupported\n"); in max98390_dai_set_fmt() 184 return -EINVAL; in max98390_dai_set_fmt() 187 regmap_update_bits(max98390->regmap, in max98390_dai_set_fmt() 199 dev_err(component->dev, "DAI invert mode unsupported\n"); in max98390_dai_set_fmt() 200 return -EINVAL; in max98390_dai_set_fmt() [all …]
|
H A D | rt5660.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5660.c -- RT5660 ALSA SoC audio codec driver 24 #include <sound/soc-dapm.h> 296 static const DECLARE_TLV_DB_SCALE(rt5660_out_vol_tlv, -4650, 150, 0); 297 static const DECLARE_TLV_DB_SCALE(rt5660_dac_vol_tlv, -6525, 75, 0); 298 static const DECLARE_TLV_DB_SCALE(rt5660_adc_vol_tlv, -1725, 75, 0); 300 static const DECLARE_TLV_DB_SCALE(rt5660_bst_tlv, -1200, 75, 0); 342 * rt5660_set_dmic_clk - Set parameter of dmic. 352 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in rt5660_set_dmic_clk() 356 rate = rt5660->sysclk / rl6231_get_pre_div(rt5660->regmap, in rt5660_set_dmic_clk() [all …]
|
H A D | max98388.c | 1 // SPDX-License-Identifier: GPL-2.0 75 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in max98388_dac_event() 80 regmap_write(max98388->regmap, in max98388_dac_event() 85 regmap_write(max98388->regmap, in max98388_dac_event() 88 max98388->tdm_mode = false; in max98388_dac_event() 131 static DECLARE_TLV_DB_SCALE(max98388_digital_tlv, -6350, 50, 1); 132 static DECLARE_TLV_DB_SCALE(max98388_amp_gain_tlv, -300, 300, 0); 135 "0dBFS", "-1dBFS", "-2dBFS", "-3dBFS", "-4dBFS", "-5dBFS", 136 "-6dBFS", "-7dBFS", "-8dBFS", "-9dBFS", "-10dBFS", "-11dBFS", 137 "-12dBFS", "-13dBFS", "-14dBFS", "-15dBFS" [all …]
|
H A D | max98925.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * max98925.c -- ALSA SoC Stereo MAX98925 driver 4 * Copyright 2013-15 Maxim Integrated Products 105 regmap_update_bits(max98925->regmap, in max98925_dac_event() 113 regmap_update_bits(max98925->regmap, in max98925_dac_event() 187 static DECLARE_TLV_DB_SCALE(max98925_spk_tlv, -600, 100, 0); 191 M98925_SPK_GAIN_SHIFT, (1<<M98925_SPK_GAIN_WIDTH)-1, 0, 200 (1<<M98925_ALC_TH_WIDTH)-1, 0), 204 /* codec sample rate and n/m dividers parameter table */ 260 int ret = -EINVAL; in max98925_rate_value() [all …]
|
H A 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 …]
|
/linux/sound/soc/intel/boards/ |
H A 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 4 * Cherrytrail and Braswell, with RT5672 codec. 22 #include <sound/soc-acpi.h> 24 #include "../atom/sst-atom-controls.h" 25 #include "../common/soc-intel-quirks.h" 28 /* The platform clock #3 outputs 19.2Mhz clock to codec as I2S MCLK */ 30 #define CHT_CODEC_DAI "rt5670-aif1" 54 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 55 struct snd_soc_card *card = dapm->card; in platform_clock_control() [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/amd/acp/ |
H A D | acp-mach-common.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 19 #include <sound/soc-dapm.h> 29 #include "acp-mach.h" 35 #define NAU8821_CODEC_DAI "nau8821-hifi" 38 #define MAX98388_CODEC_DAI "max98388-aif1" 44 /* Google skyrim proto-0 */ 77 clk_set_rate(drvdata->wclk, srate); in acp_clk_enable() 78 clk_set_rate(drvdata->bclk, srate * bclk_ratio); in acp_clk_enable() 80 return clk_prepare_enable(drvdata->wclk); in acp_clk_enable() 83 /* Declare RT5682 codec components */ [all …]
|
/linux/sound/soc/amd/ |
H A D | acp-da7219-max98357a.c | 1 // SPDX-License-Identifier: MIT 3 // Machine driver for AMD ACP Audio engine using DA7219, RT5682 & MAX98357 codec 5 //Copyright 2017-2021 Advanced Micro Devices, Inc. 11 #include <sound/soc-dapm.h> 56 struct snd_soc_card *card = rtd->card; in cz_da7219_init() 58 struct snd_soc_component *component = codec_dai->component; in cz_da7219_init() 60 dev_info(rtd->dev, "codec dai name = %s\n", codec_dai->name); in cz_da7219_init() 65 dev_err(rtd->dev, "can't set codec sysclk: %d\n", ret); in cz_da7219_init() 72 dev_err(rtd->dev, "can't set codec pll: %d\n", ret); in cz_da7219_init() 76 da7219_dai_wclk = devm_clk_get(component->dev, "da7219-dai-wclk"); in cz_da7219_init() [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 | 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 | 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 | cs47l90-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Regmap tables for CS47L90 codec 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 */ [all …]
|
H A D | cs47l85-tables.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Regmap tables for CS47L85 codec 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() [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/mediatek/mt8188/ |
H A D | mt8188-mt6359.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8188-mt6359.c -- MT8188-MT6359 ALSA SoC machine driver 17 #include "mt8188-afe-common.h" 20 #include "../../codecs/mt6359-accdet.h" 22 #include "../common/mtk-afe-platform-driver.h" 23 #include "../common/mtk-soundcard-driver.h" 24 #include "../common/mtk-dsp-sof-common.h" 25 #include "../common/mtk-soc-card.h" 43 #define MAX98390_CODEC_DAI "max98390-aif1" 44 #define MAX98390_DEV0_NAME "max98390.0-0038" /* rear right */ [all …]
|