/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 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/codecs/ |
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 | 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 | wm8995.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8995.c -- WM8995 ALSA SoC Audio driver 26 #include <sound/soc-dapm.h> 400 regcache_mark_dirty(wm8995->regmap); \ 414 static const DECLARE_TLV_DB_SCALE(digital_tlv, -7200, 75, 1); 415 static const DECLARE_TLV_DB_SCALE(in1lr_pga_tlv, -1650, 150, 0); 417 static const DECLARE_TLV_DB_SCALE(sidetone_tlv, -3600, 150, 0); 420 "Differential", "Single-ended IN1LN", "Single-ended IN1LP" 427 "Differential", "Single-ended IN1RN", "Single-ended IN1RP" 495 dev_dbg(component->dev, "Class W source AIF2DAC\n"); in wm8995_update_class_w() [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 …]
|
H A D | wm8993.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8993.c -- WM8993 ALSA SoC audio driver 5 * Copyright 2009-12 Wolfson Microelectronics plc 42 { 1, 0x0000 }, /* R1 - Power Management (1) */ 43 { 2, 0x6000 }, /* R2 - Power Management (2) */ 44 { 3, 0x0000 }, /* R3 - Power Management (3) */ 45 { 4, 0x4050 }, /* R4 - Audio Interface (1) */ 46 { 5, 0x4000 }, /* R5 - Audio Interface (2) */ 47 { 6, 0x01C8 }, /* R6 - Clocking 1 */ 48 { 7, 0x0000 }, /* R7 - Clocking 2 */ [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 | wm8904.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8904.c -- WM8904 ALSA SoC Audio driver 5 * Copyright 2009-12 Wolfson Microelectronics plc 45 /* codec private data */ 81 int bclk; member 84 /* DC servo configuration - cached offset values */ 89 { 4, 0x0018 }, /* R4 - Bias Control 0 */ 90 { 5, 0x0000 }, /* R5 - VMID Control 0 */ 91 { 6, 0x0000 }, /* R6 - Mic Bias Control 0 */ 92 { 7, 0x0000 }, /* R7 - Mic Bias Control 1 */ [all …]
|
H A D | rt5651.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5651.c -- RT5651 ALSA SoC audio codec driver 23 #include <sound/soc-dapm.h> 287 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 288 static const DECLARE_TLV_DB_MINMAX(dac_vol_tlv, -6562, 0); 289 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 290 static const DECLARE_TLV_DB_MINMAX(adc_vol_tlv, -1762, 3000); 369 * set_dmic_clk - Set parameter of dmic. 379 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in set_dmic_clk() 383 rate = rt5651->sysclk / rl6231_get_pre_div(rt5651->regmap, in set_dmic_clk() [all …]
|
H A D | wm8962.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8962.c -- WM8962 ALSA SoC Audio driver 5 * Copyright 2010-2 Wolfson Microelectronics plc 50 /* codec private data */ 59 int bclk; /* Desired BCLK */ member 98 regcache_mark_dirty(wm8962->regmap); \ 113 { 0, 0x009F }, /* R0 - Left Input volume */ 114 { 1, 0x049F }, /* R1 - Right Input volume */ 115 { 2, 0x0000 }, /* R2 - HPOUTL volume */ 116 { 3, 0x0000 }, /* R3 - HPOUTR volume */ [all …]
|
H A D | rt5682s.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // rt5682s.c -- RT5682I-VS ALSA SoC audio component driver 25 #include <sound/soc-dapm.h> 38 .dai_clk_names[RT5682S_DAI_WCLK_IDX] = "rt5682-dai-wclk", 39 .dai_clk_names[RT5682S_DAI_BCLK_IDX] = "rt5682-dai-bclk", 46 [RT5682S_SUPPLY_LDO1_IN] = "LDO1-IN", 69 ret = regmap_multi_reg_write(rt5682s->regmap, patch_list, ARRAY_SIZE(patch_list)); in rt5682s_apply_patch_list() 624 regmap_write(rt5682s->regmap, RT5682S_RESET, 0); in rt5682s_reset() 634 dev_dbg(component->dev, "%s btn_type=%x\n", __func__, btn_type); in rt5682s_button_detect() 651 mutex_lock(&rt5682s->sar_mutex); in rt5682s_sar_power_mode() [all …]
|
H A D | rt5670.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5670.c -- RT5670 ALSA SoC audio codec driver 25 #include <sound/soc-dapm.h> 31 #include "rt5670-dsp.h" 50 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 422 * rt5670_headset_detect - Detect headset. 457 rt5670->jack_type = SND_JACK_HEADSET; in rt5670_headset_detect() 464 rt5670->jack_type = SND_JACK_HEADPHONE; in rt5670_headset_detect() 471 rt5670->jack_type = 0; in rt5670_headset_detect() 476 return rt5670->jack_type; in rt5670_headset_detect() [all …]
|
H A D | rt5640.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5640.c -- RT5640/RT5639 ALSA SoC audio codec driver 27 #include <sound/soc-dapm.h> 340 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 341 static const DECLARE_TLV_DB_MINMAX(dac_vol_tlv, -6562, 0); 342 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 343 static const DECLARE_TLV_DB_MINMAX(adc_vol_tlv, -1762, 3000); 451 * set_dmic_clk - Set parameter of dmic. 461 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in set_dmic_clk() 465 rate = rt5640->sysclk / rl6231_get_pre_div(rt5640->regmap, in set_dmic_clk() [all …]
|
H A D | rt5668.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5668.c -- RT5668B ALSA SoC audio component driver 26 #include <sound/soc-dapm.h> 56 int bclk[RT5668_AIFS]; member 746 static const DECLARE_TLV_DB_SCALE(hp_vol_tlv, -2250, 150, 0); 747 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 748 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 803 * rt5668_sel_asrc_clk_src - select ASRC clock source for a set of filters 812 * for codec. This function provides an API to select the clock source for a 827 return -EINVAL; in rt5668_sel_asrc_clk_src() [all …]
|
H A D | rt5645.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5645.c -- RT5645 ALSA SoC audio codec driver 26 #include <sound/soc-dapm.h> 41 static unsigned int quirk = -1; 438 /* Some (package) variants have the headset-mi 462 int bclk[RT5645_AIFS]; global() member [all...] |
H A D | rt5682.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // rt5682.c -- RT5682 ALSA SoC audio component driver 25 #include <sound/soc-dapm.h> 38 "LDO1-IN", 60 ret = regmap_multi_reg_write(rt5682->regmap, patch_list, in rt5682_apply_patch_list() 749 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6525, 75, 0); 750 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -1725, 75, 0); 817 regmap_write(rt5682->regmap, RT5682_RESET, 0); in rt5682_reset() 818 if (!rt5682->is_sdw) in rt5682_reset() 819 regmap_write(rt5682->regmap, RT5682_I2C_MODE, 1); in rt5682_reset() [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/sound/soc/intel/boards/ |
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/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 …]
|