/linux/sound/soc/codecs/ |
H A D | wcd-mbhc-v2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. 14 #include "wcd-mbhc-v2.h" 50 struct wcd_mbhc_config *cfg; member 76 /* Holds type of Headset - Mono/Stereo */ 78 /* Holds mbhc detection method - ADC/Legacy */ 85 if (!mbhc->fields[field].reg) in wcd_mbhc_write_field() 88 return snd_soc_component_write_field(mbhc->component, in wcd_mbhc_write_field() 89 mbhc->fields[field].reg, in wcd_mbhc_write_field() 90 mbhc->fields[field].mask, val); in wcd_mbhc_write_field() [all …]
|
H A D | da7219-aad.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * da7219-aad.c - Dialog DA7219 ALSA SoC AAD Driver 24 #include "da7219-aad.h" 35 da7219->aad->jack = jack; in da7219_aad_jack_det() 36 da7219->aad->jack_inserted = false; in da7219_aad_jack_det() 55 struct snd_soc_component *component = da7219_aad->component; in da7219_aad_btn_det_work() 83 dev_warn(component->dev, "Mic bias status check timed out"); in da7219_aad_btn_det_work() 85 da7219->micbias_on_event = true; in da7219_aad_btn_det_work() 91 if (da7219_aad->micbias_pulse_lvl && da7219_aad->micbias_pulse_time) { in da7219_aad_btn_det_work() 96 da7219_aad->micbias_pulse_lvl); in da7219_aad_btn_det_work() [all …]
|
H A D | tlv320adc3xxx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 // Copyright (C) 2014-2018, Ambarella, Inc. 15 #include <dt-bindings/sound/tlv320adc3xxx.h> 33 #include <sound/soc-dapm.h> 59 * Setting the clock source using simple-card (clocks or 60 * system-clock-frequency property) sets clk_id = 0 = ADC3XXX_PLL_AUTO. 78 /* 2-3 Reserved */ 86 /* 9-17 Reserved */ 93 /* 23-24 Reserved */ 109 /* 39-41 Reserved */ [all …]
|
H A D | wcd939x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2018-2021, The Linux Foundation. All rights reserved. 4 * Copyright (c) 2022-2023, Qualcomm Innovation Center, Inc. All rights reserved. 26 #include <sound/soc-dapm.h> 31 #include "wcd-clsh-v2.h" 32 #include "wcd-mbhc-v2.h" 59 /* Convert from vout ctl to micbias voltage in mV */ 217 static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(ear_pa_gain, 600, -1800); 421 port_num = ch_info->port_num; in wcd939x_sdw_connect_port() 422 ch_mask = ch_info->ch_mask; in wcd939x_sdw_connect_port() [all …]
|
H A D | wcd937x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2023-2024 Qualcomm Innovation Center, Inc. All rights reserved. 20 #include <sound/soc-dapm.h> 24 #include "wcd-clsh-v2.h" 25 #include "wcd-mbhc-v2.h" 118 static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(ear_pa_gain, 600, -1800); 214 regmap_write(wcd937x->regmap, WCD937X_DIGITAL_INTR_CLEAR_0, 0); in wcd937x_handle_post_irq() 215 regmap_write(wcd937x->regmap, WCD937X_DIGITAL_INTR_CLEAR_1, 0); in wcd937x_handle_post_irq() 216 regmap_write(wcd937x->regmap, WCD937X_DIGITAL_INTR_CLEAR_2, 0); in wcd937x_handle_post_irq() 245 gpiod_set_value(wcd937x->reset_gpio, 1); in wcd937x_reset() [all …]
|
H A D | wcd938x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. 21 #include <sound/soc-dapm.h> 24 #include "wcd-clsh-v2.h" 25 #include "wcd-mbhc-v2.h" 193 static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(ear_pa_gain, 600, -1800); 194 static const DECLARE_TLV_DB_SCALE(line_gain, -3000, 150, 0); 350 struct regmap *rm = wcd938x->regmap; in wcd938x_io_init() 409 port_num = ch_info->port_num; in wcd938x_sdw_connect_port() 410 ch_mask = ch_info->ch_mask; in wcd938x_sdw_connect_port() [all …]
|
H A D | wcd934x.c | 1 // SPDX-License-Identifier: GPL-2.0 6 #include <linux/clk-provider.h> 21 #include <sound/soc-dapm.h> 23 #include "wcd-clsh-v2.h" 24 #include "wcd-mbhc-v2.h" 430 COMPANDER_5, /* LO3_SE - not used in Tavil */ 431 COMPANDER_6, /* LO4_SE - not used in Tavil */ 515 .name = "WCD9335-IFC-DEV", 581 static const DECLARE_TLV_DB_SCALE(digital_gain, -8400, 100, -8400); 597 "Class H Invalid", "Class-H Hi-Fi", "Class-H Low Power", "Class-AB", [all …]
|
H A D | wcd-mbhc-v2.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 36 WCD_MBHC_MICB_CTRL, /* Pull-up and micb control */ 88 MBHC_PLUG_TYPE_INVALID = -1, 122 /* events for micbias ON and OFF */ 160 I_DEFAULT = -1, 168 HS_PULLUP_I_DEFAULT = -1, 271 int wcd_dt_parse_mbhc_data(struct device *dev, struct wcd_mbhc_config *cfg); 291 struct wcd_mbhc_config *cfg) in wcd_dt_parse_mbhc_data() argument 293 return -ENOTSUPP; in wcd_dt_parse_mbhc_data() 306 return ERR_PTR(-ENOTSUPP); in wcd_mbhc_init() [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 | nau8824.c | 1 // SPDX-License-Identifier: GPL-2.0-only 35 static int quirk_override = -1; 37 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 211 ret = down_timeout(&nau8824->jd_sem, timeout); in nau8824_sema_acquire() 213 dev_warn(nau8824->dev, "Acquire semaphore timeout\n"); in nau8824_sema_acquire() 215 ret = down_interruptible(&nau8824->jd_sem); in nau8824_sema_acquire() 217 dev_warn(nau8824->dev, "Acquire semaphore fail\n"); in nau8824_sema_acquire() 225 up(&nau8824->jd_sem); in nau8824_sema_release() 304 "Off", "NC", "u-law", "A-law" }; 359 static const DECLARE_TLV_DB_MINMAX(hp_vol_tlv, -3000, 0); [all …]
|
/linux/Documentation/devicetree/bindings/sound/ |
H A D | cs42l56.txt | 5 - compatible : "cirrus,cs42l56" 7 - reg : the I2C address of the device for I2C 9 - VA-supply, VCP-supply, VLDO-supply : power supplies for the device, 14 - cirrus,gpio-nreset : GPIO controller's phandle and the number 17 - cirrus,chgfreq-divisor : Values used to set the Charge Pump Frequency. 24 - cirrus,ain1a-ref-cfg, ain1b-ref-cfg : boolean, If present, AIN1A or AIN1B are configured 25 as a pseudo-differential input referenced to AIN1REF/AIN3A. 27 - cirrus,ain2a-ref-cfg, ain2b-ref-cfg : boolean, If present, AIN2A or AIN2B are configured 28 as a pseudo-differential input referenced to AIN2REF/AIN3B. 30 - cirrus,micbias-lvl: Set the output voltage level on the MICBIAS Pin. [all …]
|
H A D | cs42l52.txt | 5 - compatible : "cirrus,cs42l52" 7 - reg : the I2C address of the device for I2C 11 - cirrus,reset-gpio : GPIO controller's phandle and the number 14 - cirrus,chgfreq-divisor : Values used to set the Charge Pump Frequency. 21 - cirrus,mica-differential-cfg : boolean, If present, then the MICA input is configured 23 Single-ended input. Single-ended mode allows for MIC1 or MIC2 muxing for input. 25 - cirrus,micb-differential-cfg : boolean, If present, then the MICB input is configured 27 Single-ended input. Single-ended mode allows for MIC1 or MIC2 muxing for input. 29 - cirrus,micbias-lvl: Set the output voltage level on the MICBIAS Pin 42 reset-gpio = <&gpio 10 0>; [all …]
|
H A D | dialog,da7219.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - David Rau <David.Rau.opensource@dm.renesas.com> 13 The DA7219 is an ultra low-power audio codec with 14 in-built advanced accessory detection (AAD) for mobile 16 sample rates up to 96 kHz at 24-bit resolution. 28 VDD-supply: 32 VDDMIC-supply: 36 VDDIO-supply: [all …]
|
H A D | wlf,wm8994.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 11 - patches@opensource.cirrus.com 25 - wlf,wm1811 26 - wlf,wm8994 27 - wlf,wm8958 36 clock-names: 39 - const: MCLK1 [all …]
|
H A D | wlf,wm8903.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 27 * MICBIAS 30 - patches@opensource.cirrus.com 39 gpio-controller: true 40 '#gpio-cells': 46 micdet-cfg: 51 micdet-delay: 56 gpio-cfg: [all …]
|
/linux/arch/arm/boot/dts/nvidia/ |
H A D | tegra20-tec.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra20-tamonten.dtsi" 20 interrupt-parent = <&gpio>; 23 gpio-controller; 24 #gpio-cells = <2>; 26 micdet-cfg = <0>; 27 micdet-delay = <100>; 28 gpio-cfg = <0xffffffff 45 compatible = "ad,tegra-audio-wm8903-tec", [all …]
|
H A D | tegra20-plutux.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra20-tamonten.dtsi" 20 interrupt-parent = <&gpio>; 23 gpio-controller; 24 #gpio-cells = <2>; 26 micdet-cfg = <0>; 27 micdet-delay = <100>; 28 gpio-cfg = <0xffffffff 37 compatible = "ad,tegra-audio-plutux", [all …]
|
H A D | tegra20-medcom-wide.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include "tegra20-tamonten.dtsi" 7 model = "Avionic Design Medcom-Wide board"; 8 compatible = "ad,medcom-wide", "ad,tamonten", "nvidia,tegra20"; 15 stdout-path = "serial0:115200n8"; 35 interrupt-parent = <&gpio>; 38 gpio-controller; 39 #gpio-cells = <2>; 41 micdet-cfg = <0>; [all …]
|
/linux/arch/arm64/boot/dts/mediatek/ |
H A D | mt8183-kukui-audio-da7219.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 10 pinctrl-names = "default"; 11 pinctrl-0 = <&da7219_pins>; 14 interrupts-extended = <&pio 165 IRQ_TYPE_LEVEL_LOW>; 16 dlg,micbias-lvl = <2600>; 17 dlg,mic-amp-in-sel = "diff"; 18 VDD-supply = <&pp1800_alw>; 19 VDDMIC-supply = <&pp3300_alw>; 20 VDDIO-supply = <&pp1800_alw>; 25 dlg,adc-1bit-rpt = <1>; [all …]
|
/linux/drivers/mfd/ |
H A D | wm8994-core.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * wm8994-core.c -- Device access for Wolfson WM8994 31 .name = "wm8994-ldo", 36 .name = "wm8994-ldo", 60 .name = "wm8994-codec", 66 .name = "wm8994-gpio", 119 switch (wm8994->type) { in wm8994_suspend() 136 if (!wm8994->ldo_ena_always_driven) in wm8994_suspend() 147 regcache_mark_dirty(wm8994->regmap); in wm8994_suspend() 152 ret = regcache_sync_region(wm8994->regmap, WM8994_GPIO_1, in wm8994_suspend() [all …]
|
/linux/arch/arm/boot/dts/samsung/ |
H A D | s5pv210-fascinate4g.dts | 1 // SPDX-License-Identifier: GPL-2.0 3 /dts-v1/; 4 #include <dt-bindings/gpio/gpio.h> 5 #include <dt-bindings/input/input.h> 6 #include "s5pv210-aries.dtsi" 9 model = "Samsung Galaxy S Fascinate 4G (SGH-T959P) based on S5PV210"; 11 chassis-type = "handset"; 14 stdout-path = &uart2; 17 gpio-keys { 18 compatible = "gpio-keys"; [all …]
|
/linux/sound/soc/intel/boards/ |
H A D | bytcr_wm5102.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * bytcr_wm5102.c - ASoc Machine driver for Intel Baytrail platforms with a 8 * Copyright (C) 2014-2020 Intel Corp 27 #include <sound/soc-acpi.h> 29 #include "../atom/sst-atom-controls.h" 51 /* Note these values are pre-shifted for easy use of setting quirks */ 59 static int quirk_override = -1; 61 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 102 struct snd_soc_card *card = w->dapm->card; in byt_wm5102_spkvdd_power_event() 105 gpiod_set_value_cansleep(priv->spkvdd_en_gpio, in byt_wm5102_spkvdd_power_event() [all …]
|
/linux/arch/arm64/boot/dts/freescale/ |
H A D | imx8mn-beacon-baseboard.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 7 dmic_codec: dmic-codec { 8 compatible = "dmic-codec"; 9 num-channels = <1>; 10 #sound-dai-cells = <0>; 14 compatible = "gpio-leds"; 16 led-0 { 19 default-state = "off"; 22 led-1 { 25 default-state = "off"; [all …]
|
H A D | imx8mm-beacon-baseboard.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 6 #include <dt-bindings/phy/phy-imx8-pcie.h> 10 dmic_codec: dmic-codec { 11 compatible = "dmic-codec"; 12 num-channels = <1>; 13 #sound-dai-cells = <0>; 17 compatible = "gpio-leds"; 22 default-state = "off"; 28 default-state = "off"; 34 default-state = "off"; [all …]
|
/linux/arch/arm/boot/dts/nxp/imx/ |
H A D | imx6qdl-sabresd.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 6 #include <dt-bindings/clock/imx6qdl-clock.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/input/input.h> 12 stdout-path = &uart1; 20 reg_usb_otg_vbus: regulator-usb-otg-vbus { 21 compatible = "regulator-fixed"; 22 regulator-name = "usb_otg_vbus"; 23 regulator-min-microvolt = <5000000>; 24 regulator-max-microvolt = <5000000>; [all …]
|