Home
last modified time | relevance | path

Searched +full:dmic +full:- +full:mode (Results 1 – 25 of 147) sorted by relevance

123456

/linux/sound/soc/mediatek/mt8365/
H A Dmt8365-dai-dmic.c1 // SPDX-License-Identifier: GPL-2.0
3 * MediaTek 8365 ALSA SoC Audio DAI DMIC Control
13 #include "mt8365-afe-clk.h"
14 #include "mt8365-afe-common.h"
46 return -EINVAL; in get_chan_reg()
55 regmap_update_bits(afe->regmap, AFE_ADDA_UL_DL_CON0, in audio_dmic_adda_enable()
62 regmap_update_bits(afe->regmap, AFE_ADDA_UL_DL_CON0, in audio_dmic_adda_disable()
72 struct mt8365_afe_private *afe_priv = afe->platform_priv; in mt8365_dai_enable_dmic()
73 struct mt8365_dmic_data *dmic_data = afe_priv->dai_priv[MT8365_AFE_IO_DMIC]; in mt8365_dai_enable_dmic()
75 int reg = get_chan_reg(dmic_data->dmic_channel); in mt8365_dai_enable_dmic()
[all …]
/linux/sound/soc/codecs/
H A Ddmic.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * dmic.c -- SoC audio for Generic Digital MICs
17 #include <sound/soc-dapm.h>
26 struct dmic { struct
29 /* Delay after DMIC mode switch */
36 struct snd_soc_component *component = dai->component; in dmic_daiops_trigger()
37 struct dmic *dmic = snd_soc_component_get_drvdata(component); in dmic_daiops_trigger() local
41 if (dmic->modeswitch_delay) in dmic_daiops_trigger()
42 mdelay(dmic->modeswitch_delay); in dmic_daiops_trigger()
56 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in dmic_aif_event()
[all …]
H A Dab8500-codec.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) ST-Ericsson SA 2012
8 * for ST-Ericsson.
14 * for ST-Ericsson.
29 #include <linux/mfd/abx500/ab8500-sysctrl.h>
30 #include <linux/mfd/abx500/ab8500-codec.h>
39 #include <sound/soc-dapm.h>
42 #include "ab8500-codec.h"
56 /* Nr of FIR/IIR-coeff banks in ANC-block */
114 /* Private data for AB8500 device-driver */
[all …]
H A Dlpass-tx-macro.c1 // SPDX-License-Identifier: GPL-2.0-only
2 // Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
12 #include <sound/soc-dapm.h>
15 #include <linux/clk-provider.h>
17 #include "lpass-macro-common.h"
41 /* Default divider for AMIC and DMIC clock: DIV2 */
201 #define TX_ADC_TO_DMIC(n) ((n - TX_ADC_MAX)/2)
292 static const DECLARE_TLV_DB_SCALE(digital_gain, -8400, 100, -8400);
617 struct regmap *regmap = tx->regmap; in tx_macro_mclk_enable()
620 if (tx->tx_mclk_users == 0) { in tx_macro_mclk_enable()
[all …]
H A Dlpass-va-macro.c1 // SPDX-License-Identifier: GPL-2.0-only
2 // Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
5 #include <linux/clk-provider.h>
16 #include <sound/soc-dapm.h>
19 #include "lpass-macro-common.h"
165 static const DECLARE_TLV_DB_SCALE(digital_gain, -8400, 100, -8400);
455 struct regmap *regmap = va->regmap; in va_clk_rsc_fs_gen_request()
488 struct regmap *regmap = va->regmap; in va_macro_mclk_enable()
504 struct snd_soc_component *comp = snd_soc_dapm_to_component(w->dapm); in va_macro_mclk_event()
509 return clk_prepare_enable(va->fsgen); in va_macro_mclk_event()
[all …]
H A Dtscs454.c1 // SPDX-License-Identifier: GPL-2.0
2 // tscs454.c -- TSCS454 ALSA SoC Audio driver
21 #include <sound/soc-dapm.h>
50 pll->id = id; in pll_init()
51 mutex_init(&pll->lock); in pll_init()
66 aif->id = id; in aif_init()
85 cache[((norm_addrs[i] + 1) * COEFF_SIZE) - 1] = 0x40; in init_coeff_ram_cache()
90 init_coeff_ram_cache(ram->cache); in coeff_ram_init()
91 mutex_init(&ram->lock); in coeff_ram_init()
103 status->streams |= mask; in set_aif_status_active()
[all …]
H A Drt5677.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * rt5677.c -- RT5677 ALSA SoC audio codec driver
29 #include <sound/soc-dapm.h>
35 #include "rt5677-spi.h"
552 * rt5677_dsp_mode_i2c_write_addr - Write value to address on DSP mode.
563 struct snd_soc_component *component = rt5677->component; in rt5677_dsp_mode_i2c_write_addr()
566 mutex_lock(&rt5677->dsp_cmd_lock); in rt5677_dsp_mode_i2c_write_addr()
568 ret = regmap_write(rt5677->regmap_physical, RT5677_DSP_I2C_ADDR_MSB, in rt5677_dsp_mode_i2c_write_addr()
571 dev_err(component->dev, "Failed to set addr msb value: %d\n", ret); in rt5677_dsp_mode_i2c_write_addr()
575 ret = regmap_write(rt5677->regmap_physical, RT5677_DSP_I2C_ADDR_LSB, in rt5677_dsp_mode_i2c_write_addr()
[all …]
H A Drt5670.c1 // 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 Dadau1761.c1 // SPDX-License-Identifier: GPL-2.0-or-later
5 * Copyright 2011-2013 Analog Devices Inc.
6 * Author: Lars-Peter Clausen <lars@metafoo.de>
125 static const DECLARE_TLV_DB_SCALE(adau1761_sing_in_tlv, -1500, 300, 1);
126 static const DECLARE_TLV_DB_SCALE(adau1761_diff_in_tlv, -1200, 75, 0);
127 static const DECLARE_TLV_DB_SCALE(adau1761_out_tlv, -5700, 100, 0);
128 static const DECLARE_TLV_DB_SCALE(adau1761_sidetone_tlv, -1800, 300, 1);
129 static const DECLARE_TLV_DB_SCALE(adau1761_boost_tlv, -600, 600, 1);
130 static const DECLARE_TLV_DB_SCALE(adau1761_pga_boost_tlv, -2000, 2000, 1);
132 static const DECLARE_TLV_DB_SCALE(adau1761_alc_max_gain_tlv, -1200, 600, 0);
[all …]
H A Dmax9867.c1 // SPDX-License-Identifier: GPL-2.0
5 // Copyright 2013-2015 Maxim Integrated Products
6 // Copyright 2018 Ladislav Michl <ladis@linux-mips.org>
42 "Butterworth/8-24"
55 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in max9867_adc_dac_event()
71 max9867->adc_dac_active |= BIT(adc_dac); in max9867_adc_dac_event()
73 max9867->adc_dac_active &= ~BIT(adc_dac); in max9867_adc_dac_event()
86 ret = regmap_read(max9867->regmap, MAX9867_CODECFLTR, &reg); in max9867_filter_get()
88 return -EINVAL; in max9867_filter_get()
91 ucontrol->value.enumerated.item[0] = 1; in max9867_filter_get()
[all …]
H A Dmax98090.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * max98090.c -- MAX98090 ALSA SoC Audio driver
5 * Copyright 2011-2012 Maxim Integrated Products
46 { 0x14, 0x00 }, /* 14 Digital Mic Mode */
54 { 0x1C, 0x00 }, /* 1C Clock Mode */
60 { 0x21, 0x00 }, /* 21 Master Mode */
279 /* Reset the codec by writing to this write-only reset register */ in max98090_reset()
280 ret = regmap_write(max98090->regmap, M98090_REG_SOFTWARE_RESET, in max98090_reset()
283 dev_err(max98090->component->dev, in max98090_reset()
300 -600, 600, 0);
[all …]
/linux/Documentation/devicetree/bindings/sound/
H A Ddmic-codec.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/sound/dmic-codec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic PDM Digital microphone (DMIC) codec
10 - Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
13 - $ref: dai-common.yaml#
17 const: dmic-codec
19 '#sound-dai-cells':
22 dmicen-gpios:
[all …]
H A Drealtek,rt5645.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Animesh Agarwal <animeshagarwal28@gmail.com>
16 * DMIC L1
17 * DMIC R1
18 * DMIC L2
19 * DMIC R2
35 - $ref: dai-common.yaml#
40 - realtek,rt5645
[all …]
H A Dmt6358.txt10 - compatible - "string" - One of:
11 "mediatek,mt6358-sound"
12 "mediatek,mt6366-sound"
13 - Avdd-supply : power source of AVDD
16 - mediatek,dmic-mode : Indicates how many data pins are used to transmit two
23 compatible = "mediatek,mt6358-sound";
24 Avdd-supply = <&mt6358_vaud28_reg>;
25 mediatek,dmic-mode = <0>;
H A Dmediatek,mt8365-afe.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/mediatek,mt8365-afe.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Alexandre Mergnat <amergnat@baylibre.com>
14 const: mediatek,mt8365-afe-pcm
19 "#sound-dai-cells":
24 - description: 26M clock
25 - description: mux for audio clock
26 - description: audio i2s0 mck
[all …]
/linux/Documentation/sound/hd-audio/
H A Dmodels.rst2 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/arch/riscv/boot/dts/allwinner/
H A Dsun20i-d1-lichee-rv-86-panel.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
4 #include "sun20i-d1-lichee-rv.dts"
12 dmic_codec: dmic-codec {
13 compatible = "dmic-codec";
14 num-channels = <2>;
15 #sound-dai-cells = <0>;
18 dmic-sound {
19 compatible = "simple-audio-card";
20 simple-audio-card,name = "DMIC";
21 #address-cells = <1>;
[all …]
/linux/sound/soc/ux500/
H A Dmop500_ab8500.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) ST-Ericsson SA 2012
7 * for ST-Ericsson.
17 #include <sound/soc-dapm.h>
24 #include "../codecs/ab8500-codec.h"
61 /* Private data for machine-part MOP500<->AB8500 */
88 if (IS_ERR(drvdata->clk_ptr_intclk)) { in mop500_ab8500_set_mclk()
91 return -EIO; in mop500_ab8500_set_mclk()
94 switch (drvdata->mclk_sel) { in mop500_ab8500_set_mclk()
96 clk_ptr = drvdata->clk_ptr_sysclk; in mop500_ab8500_set_mclk()
[all …]
/linux/sound/soc/mediatek/mt8186/
H A Dmt8186-dai-adda.c1 // SPDX-License-Identifier: GPL-2.0
10 #include "mt8186-afe-clk.h"
11 #include "mt8186-afe-common.h"
12 #include "mt8186-afe-gpio.h"
13 #include "mt8186-interconnection.h"
14 #include "../common/mtk-dai-adda-common.h"
47 struct mt8186_afe_private *afe_priv = afe->platform_priv; in get_adda_priv_by_name()
55 return afe_priv->dai_priv[dai_id]; in get_adda_priv_by_name()
132 return -EINVAL; in mtk_adda_ul_src_dmic()
135 /* dmic mode, 3.25M*/ in mtk_adda_ul_src_dmic()
[all …]
/linux/sound/soc/mediatek/mt8192/
H A Dmt8192-dai-adda.c1 // SPDX-License-Identifier: GPL-2.0
12 #include "mt8192-afe-clk.h"
13 #include "mt8192-afe-common.h"
14 #include "mt8192-afe-gpio.h"
15 #include "mt8192-interconnection.h"
16 #include "../common/mtk-dai-adda-common.h"
189 return -EINVAL; in mtk_adda_ul_src_dmic()
192 /* dmic mode, 3.25M*/ in mtk_adda_ul_src_dmic()
193 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic()
196 regmap_update_bits(afe->regmap, reg, in mtk_adda_ul_src_dmic()
[all …]
/linux/sound/soc/sunxi/
H A Dsun50i-dmic.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 // This driver supports the DMIC in Allwinner's H6 SoCs.
93 if (substream->stream != SNDRV_PCM_STREAM_CAPTURE) in sun50i_dmic_startup()
94 return -EINVAL; in sun50i_dmic_startup()
96 regmap_update_bits(host->regmap, SUN50I_DMIC_RXFIFO_CTL, in sun50i_dmic_startup()
99 regmap_write(host->regmap, SUN50I_DMIC_CNT, SUN50I_DMIC_CNT_N); in sun50i_dmic_startup()
112 unsigned int chan_en = (1 << channels) - 1; in sun50i_dmic_hw_params()
115 /* DMIC num is N+1 */ in sun50i_dmic_hw_params()
116 regmap_update_bits(host->regmap, SUN50I_DMIC_CH_NUM, in sun50i_dmic_hw_params()
118 SUN50I_DMIC_CH_NUM_N(channels - 1)); in sun50i_dmic_hw_params()
[all …]
/linux/include/sound/sof/
H A Ddai.h1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
13 #include <sound/sof/dai-intel.h>
14 #include <sound/sof/dai-imx.h>
15 #include <sound/sof/dai-amd.h>
16 #include <sound/sof/dai-mediatek.h>
24 #define SOF_DAI_FMT_I2S 1 /**< I2S mode */
25 #define SOF_DAI_FMT_RIGHT_J 2 /**< Right Justified mode */
26 #define SOF_DAI_FMT_LEFT_J 3 /**< Left Justified mode */
79 SOF_DAI_INTEL_DMIC, /**< Intel DMIC */
86 SOF_DAI_AMD_DMIC, /**< AMD ACP DMIC */
[all …]
H A Ddai-intel.h1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
58 /* DMIC max. four controllers for eight microphone channels */
61 /* SSP Configuration Request - SOF_IPC_DAI_SSP_CONFIG */
93 /* HDA Configuration Request - SOF_IPC_DAI_HDA_CONFIG */
101 /* ALH Configuration Request - SOF_IPC_DAI_ALH_CONFIG */
112 /* DMIC Configuration Request - SOF_IPC_DAI_DMIC_CONFIG */
127 * that delays the sampling time of data by half cycles of DMIC source clock
149 * device driver src/drivers/dmic.c need to match. It is incremented from
155 * range 1.0 - 3.2 MHz is usually supported microphones. Some microphones are
156 * multi-mode capable and there may be denied mic clock frequencies between
[all …]
/linux/sound/soc/rockchip/
H A Drk3399_gru_sound.c1 // SPDX-License-Identifier: GPL-2.0-only
24 #define DRV_NAME "rk3399-gru-sound"
77 dev_err(rtd->card->dev, "%s() error setting sysclk to %u: %d\n", in rockchip_sound_max98357a_hw_params()
99 dev_err(rtd->card->dev, "Can't set cpu clock out %d\n", ret); in rockchip_sound_rt5514_hw_params()
106 dev_err(rtd->card->dev, "%s() error setting sysclk to %u: %d\n", in rockchip_sound_rt5514_hw_params()
111 /* Wait for DMIC stable */ in rockchip_sound_rt5514_hw_params()
125 /* in bypass mode, the mclk has to be one of the frequencies below */ in rockchip_sound_da7219_hw_params()
143 return -EINVAL; in rockchip_sound_da7219_hw_params()
149 dev_err(codec_dai->dev, "Can't set cpu clock out %d\n", ret); in rockchip_sound_da7219_hw_params()
156 dev_err(codec_dai->dev, "Can't set codec clock in %d\n", ret); in rockchip_sound_da7219_hw_params()
[all …]
/linux/sound/soc/mediatek/mt8183/
H A Dmt8183-dai-adda.c1 // SPDX-License-Identifier: GPL-2.0
10 #include "mt8183-afe-common.h"
11 #include "mt8183-interconnection.h"
12 #include "mt8183-reg.h"
13 #include "../common/mtk-dai-adda-common.h"
62 struct snd_soc_component *cmpnt = snd_soc_dapm_to_component(w->dapm); in mtk_adda_ul_event()
64 struct mt8183_afe_private *afe_priv = afe->platform_priv; in mtk_adda_ul_event()
66 dev_dbg(afe->dev, "%s(), name %s, event 0x%x\n", in mtk_adda_ul_event()
67 __func__, w->name, event); in mtk_adda_ul_event()
71 /* update setting to dmic */ in mtk_adda_ul_event()
[all …]

123456