/linux/sound/soc/codecs/ |
H A D | cs42l73.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cs42l73.c -- CS42L73 ALSA Soc Audio driver 25 #include <sound/soc-dapm.h> 47 { 6, 0xF1 }, /* r06 - Power Ctl 1 */ 48 { 7, 0xDF }, /* r07 - Power Ctl 2 */ 49 { 8, 0x3F }, /* r08 - Power Ctl 3 */ 50 { 9, 0x50 }, /* r09 - Charge Pump Freq */ 51 { 10, 0x53 }, /* r0A - Output Load MicBias Short Detect */ 52 { 11, 0x00 }, /* r0B - DMIC Master Clock Ctl */ 53 { 12, 0x00 }, /* r0C - Aux PCM Ctl */ [all …]
|
H A D | cs42l73.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 15 /* I2C Address: 1001010[R/W] - 10010100 = 0x94(Write); 10010101 = 0x95(Read) */ 57 #define CS42L73_LIMRRATESPK 0x2A /* Lmtr Ctl,Release Rate Spk. [A]. */ 100 #define CS42L73_MMIXCTL 0x55 /* Mono Mixer Controls. */ 101 #define CS42L73_SPKMIPMA 0x56 /* SPK Mono Mixer: In. Path */ 102 #define CS42L73_SPKMXSPA 0x57 /* SPK Mono Mixer: XSP Mono/L/R Att. */ 103 #define CS42L73_SPKMASPA 0x58 /* SPK Mono Mixer: ASP Mono/L/R Att. */ 104 #define CS42L73_SPKMVSPMA 0x59 /* SPK Mono Mixer: VSP Mono Atten. */ 105 #define CS42L73_ESLMIPMA 0x5A /* Ear/SpLO Mono Mixer: */ 106 #define CS42L73_ESLMXSPA 0x5B /* Ear/SpLO Mono Mixer: XSP */ [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); 426 SOC_DOUBLE("Mono ADC Capture Switch", RT5640_DUMMY1, 428 SOC_DOUBLE_TLV("Mono ADC Capture Volume", RT5640_ADC_DATA, 436 SOC_ENUM("Class D SPK Ratio Control", rt5640_clsd_spk_ratio_enum), [all …]
|
H A D | rt5659.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5659.c -- RT5659/RT5658 ALSA SoC audio codec driver 25 #include <sound/soc-dapm.h> 1136 static const DECLARE_TLV_DB_SCALE(hp_vol_tlv, -2325, 75, 0); 1137 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 1138 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 1139 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 1140 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 1142 static const DECLARE_TLV_DB_SCALE(in_bst_tlv, -1200, 75, 0); 1249 * rt5659_headset_detect - Detect headset. [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-mic pin not-connecte 3962 int spk = 2; rt5645_components() local [all...] |
H A D | ak4535.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ak4535.c -- AK4535 ALSA Soc Audio driver 65 static const char *ak4535_mono_gain[] = {"+6dB", "-17dB"}; 66 static const char *ak4535_mono_out[] = {"(L + R)/2", "Hi-Z"}; 67 static const char *ak4535_hp_out[] = {"Stereo", "Mono"}; 81 SOC_ENUM("Mono 1 Output", ak4535_enum[1]), 82 SOC_ENUM("Mono 1 Gain", ak4535_enum[0]), 101 /* Mono 1 Mixer */ 104 SOC_DAPM_SINGLE("Mono Playback Switch", AK4535_SIG1, 5, 1, 0), 132 /* mono 2 switch */ [all …]
|
H A D | rt5631.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5631.c -- RT5631 ALSA Soc Audio driver 22 #include <sound/soc-dapm.h> 68 * rt5631_write_index - write index register of 2nd layer 78 * rt5631_read_index - read index register of 2nd layer 169 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 170 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -95625, 375, 0); 171 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 189 ucontrol->value.integer.value[0] = rt5631->dmic_used_flag; in rt5631_dmic_get() 200 rt5631->dmic_used_flag = ucontrol->value.integer.value[0]; in rt5631_dmic_put() [all …]
|
H A D | wm9712.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * wm9712.c -- ALSA Soc WM9712 codec support 5 * Copyright 2006-12 Wolfson Microelectronics PLC. 103 "Mono"}; 115 static const DECLARE_TLV_DB_SCALE(main_tlv, -3450, 150, 0); 143 SOC_SINGLE("Mono Playback ZC Switch", AC97_MASTER_MONO, 7, 1, 0), 144 SOC_SINGLE("Mono Playback Volume", AC97_MASTER_MONO, 0, 31, 1), 145 SOC_SINGLE("Mono Playback Switch", AC97_MASTER_MONO, 15, 1, 1), 181 SOC_SINGLE("3D Upper Cut-off Switch", AC97_3D_CONTROL, 5, 1, 1), 182 SOC_SINGLE("3D Lower Cut-off Switch", AC97_3D_CONTROL, 4, 1, 1), [all …]
|
H A D | max98095.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * max98095.c -- MAX98095 ALSA SoC Audio driver 338 "Off", "Elliptical-HPF-16k", "Butterworth-HPF-16k", 339 "Elliptical-HPF-8k", "Butterworth-HPF-8k", "Butterworth-HPF-Fs/240"}; 355 unsigned int sel = ucontrol->value.integer.value[0]; in max98095_mic1pre_set() 357 max98095->mic1pre = sel; in max98095_mic1pre_set() 370 ucontrol->value.integer.value[0] = max98095->mic1pre; in max98095_mic1pre_get() 379 unsigned int sel = ucontrol->value.integer.value[0]; in max98095_mic2pre_set() 381 max98095->mic2pre = sel; in max98095_mic2pre_set() 394 ucontrol->value.integer.value[0] = max98095->mic2pre; in max98095_mic2pre_get() [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 | lm4857.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 8 * Copyright 2011 Lars-Peter Clausen <lars@metafoo.de> 71 static const DECLARE_TLV_DB_SCALE(stereo_tlv, -4050, 150, 0); 72 static const DECLARE_TLV_DB_SCALE(mono_tlv, -3450, 150, 0); 79 SOC_SINGLE_TLV("Mono Playback Volume", LM4857_MVOL, 0, 31, 0, 81 SOC_SINGLE("Spk 3D Playback Switch", LM4857_LVOL, LM4857_3D, 1, 0), 126 return devm_snd_soc_register_component(&i2c->dev, in lm4857_i2c_probe() 146 MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>");
|
H A D | tlv320aic31xx.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2014-2017 Texas Instruments Incorporated - https://www.ti.com/ 10 * The TLV320AIC31xx series of audio codecs are low-power, highly integrated 11 * high performance codecs which provides a stereo DAC, a mono ADC, 12 * and mono/stereo Class-D speaker driver. 36 #include <dt-bindings/sound/tlv320aic31xx.h> 180 u8 ocmv; /* output common-mode voltage */ 267 "Off", "Left Data", "Right Data", "Mono" 271 "Off", "Right Data", "Left Data", "Mono" 311 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6350, 50, 0); [all …]
|
H A D | wm9713.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * wm9713.c -- ALSA Soc WM9713 codec support 5 * Copyright 2006-10 Wolfson Microelectronics PLC. 8 * Features:- 49 {"Mic 1", "Mic 2", "Line", "Mono In", "Headphone", "Speaker", 50 "Mono Out", "Zh"}; 53 static const char *wm9713_mono_pga[] = {"Vmid", "Zh", "Mono", "Inv"}; 62 {"Off", "Mono", "Speaker", "Left Headphone", "Right Headphone", 63 "Headphone Mono", "NC", "Vmid"}; 72 SOC_ENUM_SINGLE(AC97_VIDEO, 9, 4, wm9713_rec_mux), /* record mux mono 2 */ [all …]
|
H A D | cpcap.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2017 - 2018 Sebastian Reichel <sre@kernel.org> 8 * Copyright (C) 2007 - 2009 Motorola, Inc. 14 #include <linux/mfd/motorola-cpcap.h> 19 /* Register 512 CPCAP_REG_VAUDIOC --- Audio Regulator and Bias Voltage */ 27 /* Register 513 CPCAP_REG_CC --- CODEC */ 45 /* Register 514 CPCAP_REG_CDI --- CODEC Digital Audio Interface */ 62 /* Register 515 CPCAP_REG_SDAC --- Stereo DAC */ 76 /* Register 516 CPCAP_REG_SDACDI --- Stereo DAC Digital Audio Interface */ 92 /* Register 517 CPCAP_REG_TXI --- TX Interface */ [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 …]
|
/linux/Documentation/devicetree/bindings/sound/ |
H A D | wlf,arizona.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 20 - $ref: dai-common.yaml# 23 '#sound-dai-cells': 31 signals. Valid values are 0 (Differential), 1 (Single-ended) and 38 $ref: /schemas/types.yaml#/definitions/uint32-array 46 wlf,out-mono: 48 A list of boolean values indicating whether each output is mono [all …]
|
H A D | nvidia,tegra-audio-rt5631.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-rt5631.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jon Hunter <jonathanh@nvidia.com> 11 - Thierry Reding <thierry.reding@gmail.com> 14 - $ref: nvidia,tegra-audio-common.yaml# 19 - pattern: '^[a-z0-9]+,tegra-audio-rt5631(-[a-z0-9]+)+$' 20 - const: nvidia,tegra-audio-rt5631 22 nvidia,audio-routing: [all …]
|
H A D | ti,tlv320dac3100.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: Texas Instruments - tlv320aic31xx Codec module 10 - Shenghao Ding <shenghao-ding@ti.com> 18 * SPK, devices with mono speaker amp 28 The pins can be used in referring sound node's audio-routing property. 33 - ti,tlv320aic310x # - Generic TLV320AIC31xx with mono speaker amp 34 - ti,tlv320aic311x # - Generic TLV320AIC31xx with stereo speaker amp 35 - ti,tlv320aic3100 # - TLV320AIC3100 (mono speaker amp, no MiniDSP) [all …]
|
H A D | wlf,wm8962.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: Wolfson WM8962 Ultra-Low Power Stereo CODEC 10 - patches@opensource.cirrus.com 13 - $ref: dai-common.yaml# 28 "#sound-dai-cells": 31 AVDD-supply: 34 CPVDD-supply: 37 DBVDD-supply: [all …]
|
/linux/sound/soc/intel/boards/ |
H A D | bytcht_es8316.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * bytcht_es8316.c - ASoc Machine driver for Intel Baytrail/Cherrytrail 7 * Authors: David Yang <yangxiaohua@everest-semi.com>, 29 #include <sound/soc-acpi.h> 30 #include "../../codecs/es83xx-dsm-common.h" 31 #include "../atom/sst-atom-controls.h" 32 #include "../common/soc-intel-quirks.h" 34 /* jd-inv + terminating entry */ 57 static int quirk_override = -1; 59 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); [all …]
|
/linux/sound/soc/pxa/ |
H A D | spitz.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * spitz.c -- SoC audio for Sharp SL-Cxx00 models Spitz, Borzoi and Akita 22 #include <asm/mach-types.h> 24 #include "pxa2xx-i2s.h" 34 /* audio clock in Hz - rounded from 12.235MHz */ 46 snd_soc_dapm_enable_pin_unlocked(dapm, "Ext Spk"); in spitz_ext_control() 48 snd_soc_dapm_disable_pin_unlocked(dapm, "Ext Spk"); in spitz_ext_control() 110 spitz_ext_control(&rtd->card->dapm); in spitz_startup() 161 ucontrol->value.enumerated.item[0] = spitz_jack_func; in spitz_get_jack() 170 if (spitz_jack_func == ucontrol->value.enumerated.item[0]) in spitz_set_jack() [all …]
|
/linux/sound/soc/tegra/ |
H A D | tegra186_dspk.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // SPDX-FileCopyrightText: Copyright (c) 2020-2024 NVIDIA CORPORATION & AFFILIATES. All rights rese… 4 // tegra186_dspk.c - Tegra186 DSPK driver 34 ucontrol->value.integer.value[0] = dspk->rx_fifo_th; in tegra186_dspk_get_fifo_th() 44 int value = ucontrol->value.integer.value[0]; in tegra186_dspk_put_fifo_th() 46 if (value == dspk->rx_fifo_th) in tegra186_dspk_put_fifo_th() 49 dspk->rx_fifo_th = value; in tegra186_dspk_put_fifo_th() 60 ucontrol->value.enumerated.item[0] = dspk->osr_val; in tegra186_dspk_get_osr_val() 70 unsigned int value = ucontrol->value.enumerated.item[0]; in tegra186_dspk_put_osr_val() 72 if (value == dspk->osr_val) in tegra186_dspk_put_osr_val() [all …]
|
H A D | tegra210_i2s.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // tegra210_i2s.c - Tegra210 I2S driver 44 regmap_write(regmap, TEGRA210_I2S_SLOT_CTRL, total_slots - 1); in tegra210_i2s_set_slot_ctrl() 56 regmap_read(i2s->regmap, TEGRA210_I2S_CTRL, &val); in tegra210_i2s_set_clock_rate() 62 err = clk_set_rate(i2s->clk_i2s, clock_rate); in tegra210_i2s_set_clock_rate() 69 if (!IS_ERR(i2s->clk_sync_input)) { in tegra210_i2s_set_clock_rate() 75 err = clk_set_rate(i2s->clk_sync_input, clock_rate); in tegra210_i2s_set_clock_rate() 90 struct device *dev = compnt->dev; in tegra210_i2s_sw_reset() 109 regmap_read(i2s->regmap, cif_reg, &cif_ctrl); in tegra210_i2s_sw_reset() 110 regmap_read(i2s->regmap, stream_reg, &stream_ctrl); in tegra210_i2s_sw_reset() [all …]
|
/linux/Documentation/sound/hd-audio/ |
H A D | models.rst | 2 HD-Audio Codec-Specific Models 8 3-jack in back and a headphone out 9 3stack-digout 10 3-jack in back, a HP out and a SPDIF out 12 5-jack in back, 2-jack in front 13 5stack-digout 14 5-jack in back, 2-jack in front, a SPDIF out 16 6-jack in back, 2-jack in front 17 6stack-digout 18 6-jack with a SPDIF out [all …]
|
/linux/sound/soc/samsung/ |
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 …]
|