Home
last modified time | relevance | path

Searched +full:dmic +full:- +full:sample +full:- +full:rate (Results 1 – 25 of 44) sorted by relevance

12

/linux/sound/soc/tegra/
H A Dtegra_audio_graph_card.c1 // SPDX-License-Identifier: GPL-2.0-only
2 // SPDX-FileCopyrightText: Copyright (c) 2020-2025 NVIDIA CORPORATION. All rights reserved.
4 // tegra_audio_graph_card.c - Audio Graph based Tegra Machine Driver
12 #include <sound/soc-dai.h>
21 * Sample rates multiple of 8000 Hz and below are supported:
27 * Sample rates multiple of 11025 Hz and below are supported:
50 !dai->driver->ops || in need_clk_update()
51 !dai->driver->name) in need_clk_update()
54 if (strstr(dai->driver->name, "I2S") || in need_clk_update()
55 strstr(dai->driver->name, "DMIC") || in need_clk_update()
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
5 tristate "SoC Audio for the Tegra System-on-Chip"
72 tristate "Tegra210 DMIC module"
74 Config to enable the Digital MIC (DMIC) controller which is used
76 The DMIC controller implements a converter to convert PDM signals
79 Say Y or M if you want to add support for Tegra210 DMIC module.
85 Config to enable the Inter-IC Sound (I2S) Controller which
86 implements full-duplex and bidirectional and single direction
87 point-to-point serial interfaces. It can interface with I2S
103 Config to enable the Asynchronous Sample Rate Converter (ASRC),
[all …]
/linux/include/sound/sof/
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 */
97 uint32_t rate; member
101 /* ALH Configuration Request - SOF_IPC_DAI_ALH_CONFIG */
105 uint32_t rate; member
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
[all …]
/linux/sound/hda/core/
H A Dintel-nhlt.c1 // SPDX-License-Identifier: GPL-2.0-only
2 // Copyright (c) 2015-2019 Intel Corporation
5 #include <sound/intel-nhlt.h>
42 if (nhlt->header.length <= sizeof(struct acpi_table_header)) { in intel_nhlt_get_dmic_geo()
43 dev_warn(dev, "Invalid DMIC description table\n"); in intel_nhlt_get_dmic_geo()
47 for (j = 0, epnt = nhlt->desc; j < nhlt->endpoint_count; j++, in intel_nhlt_get_dmic_geo()
48 epnt = (struct nhlt_endpoint *)((u8 *)epnt + epnt->length)) { in intel_nhlt_get_dmic_geo()
50 if (epnt->linktype != NHLT_LINK_DMIC) in intel_nhlt_get_dmic_geo()
53 cfg = (struct nhlt_dmic_array_config *)(epnt->config.caps); in intel_nhlt_get_dmic_geo()
54 fmt_configs = (struct nhlt_fmt *)(epnt->config.caps + epnt->config.size); in intel_nhlt_get_dmic_geo()
[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 …]
/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/codecs/
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, -840
606 va_dmic_clk_enable(struct snd_soc_component * component,u32 dmic,bool enable) va_dmic_clk_enable() argument
720 unsigned int dmic = w->shift; va_macro_enable_dmic() local
[all...]
H A Dcs42l73.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * cs42l73.c -- CS42L73 ALSA Soc Audio driver
26 #include <sound/soc-dapm.h>
54 { 6, 0xF1 }, /* r06 - Power Ctl 1 */
55 { 7, 0xDF }, /* r07 - Power Ctl 2 */
56 { 8, 0x3F }, /* r08 - Power Ctl 3 */
57 { 9, 0x50 }, /* r09 - Charge Pump Freq */
58 { 10, 0x53 }, /* r0A - Output Load MicBias Short Detect */
59 { 11, 0x00 }, /* r0B - DMIC Master Clock Ctl */
60 { 12, 0x00 }, /* r0C - Aux PCM Ctl */
[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 Dwcd934x.c1 // 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-common.h"
25 #include "wcd-mbhc-v
537 int rate; global() member
1489 wcd934x_set_prim_interpolator_rate(struct snd_soc_dai * dai,u8 rate_val,u32 rate) wcd934x_set_prim_interpolator_rate() argument
1546 wcd934x_set_mix_interpolator_rate(struct snd_soc_dai * dai,int rate_val,u32 rate) wcd934x_set_mix_interpolator_rate() argument
1615 wcd934x_set_decimator_rate(struct snd_soc_dai * dai,u8 rate_val,u32 rate) wcd934x_set_decimator_rate() argument
4696 wcd934x_get_dmic_sample_rate(struct snd_soc_component * comp,unsigned int dmic,struct wcd934x_codec * wcd) wcd934x_get_dmic_sample_rate() argument
4800 unsigned int dmic; wcd934x_codec_enable_dmic() local
[all...]
H A Dwcd9335.c1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
3 // Copyright (c) 2017-2018, Linaro Limited
19 #include <sound/soc-dapm.h>
26 #include "wcd-clsh-v2.h"
28 #include <dt-bindings/sound/qcom,wcd9335.h>
99 #define WCD9335_CALCULATE_VOUT_D(req_mv) (((req_mv - 650) * 10) / 25)
147 {"ADC MUX" #id, "DMIC", "DMIC MUX" #id}, \
149 {"DMIC MUX" #id, "DMIC0", "DMIC0"}, \
150 {"DMIC MUX" #id, "DMIC1", "DMIC1"}, \
[all …]
H A Drt5682.c1 // 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()
751 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6525, 75, 0);
752 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -1725, 75, 0);
819 regmap_write(rt5682->regmap, RT5682_RESET, 0); in rt5682_reset()
820 if (!rt5682->is_sdw) in rt5682_reset()
821 regmap_write(rt5682->regmap, RT5682_I2C_MODE, 1); in rt5682_reset()
[all …]
H A Des8316.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * es8316.c -- es8316 ALSA SoC audio driver
6 * Authors: David Yang <yangxiaohua@everest-semi.com>,
21 #include <sound/soc-dapm.h>
52 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(dac_vol_tlv, -9600, 50, 1);
53 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(adc_vol_tlv, -9600, 50, 1);
54 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(alc_max_gain_tlv, -650, 150, 0);
55 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(alc_min_gain_tlv, -1200, 150, 0);
58 0, 10, TLV_DB_SCALE_ITEM(-1650, 150, 0),
59 11, 11, TLV_DB_SCALE_ITEM(-150, 0, 0),
[all …]
H A Dtlv320adc3xxx.c1 // 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 Drt5682s.c1 // 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 Dda7213.c1 // SPDX-License-Identifier: GPL-2.0-or-later
34 /* -54dB */
35 0x0, 0x11, TLV_DB_SCALE_ITEM(-5400, 0, 0),
36 /* -52.5dB to 15dB */
37 0x12, 0x3f, TLV_DB_SCALE_ITEM(-5250, 150, 0)
42 /* -7
[all...]
H A Dtlv320aic3x.c1 // SPDX-License-Identifier: GPL-2.0-only
16 * ------
[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 Dtas2552.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * tas2552.c - ALSA SoC Texas Instruments TAS2552 Mono Audio Amplifier
5 * Copyright (C) 2014 - 2024 Texas Instruments Incorporated -
25 #include <sound/soc-dapm.h>
27 #include <sound/tas2552-plat.h>
28 #include <dt-bindings/sound/tas2552.h>
82 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in tas2552_post_event()
128 SND_SOC_DAPM_INPUT("DMIC")
138 {"ASI OUT", NULL, "DMIC"}
145 if (!tas2552->component) in tas2552_sw_shutdown()
[all …]
H A Dwm8903.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * wm8903.c -- WM8903 ALSA SoC Audio driver
5 * Copyright 2008-12 Wolfson Microelectronics
6 * Copyright 2011-2012 NVIDIA, Inc.
11 * - TDM mode configuration.
41 { 4, 0x0018 }, /* R4 - Bias Control 0 */
42 { 5, 0x0000 }, /* R5 - VMID Control 0 */
43 { 6, 0x0000 }, /* R6 - Mic Bias Control 0 */
44 { 8, 0x0001 }, /* R8 - Analogue DAC 0 */
45 { 10, 0x0001 }, /* R10 - Analogue ADC 0 */
[all …]
/linux/sound/soc/amd/
H A Dacp-da7219-max98357a.c1 // SPDX-License-Identifier: MIT
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()
80 da7219_dai_bclk = devm_clk_get(component->dev, "da7219-dai-bclk"); in cz_da7219_init()
[all …]
/linux/sound/soc/fsl/
H A Dfsl-asoc-card.c1 // SPDX-License-Identifier: GPL-2.0
23 #include "imx-audmux.h"
33 #define DRIVER_NAME "fsl-asoc-card"
44 * struct codec_priv - CODEC private data
46 * @mclk_freq: Clock rate of MCLK
47 * @free_freq: Clock rate of MCLK for hw_free()
62 * struct cpu_priv - CPU private data
66 * @sysclk_ratio: SYSCLK ratio on sample rate
82 * struct fsl_asoc_card_priv - Freescale Generic ASOC card private data
91 * @sample_rate: Current sample rate
[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/mediatek/mt8195/
H A Dmt8195-dai-adda.c1 // SPDX-License-Identifier: GPL-2.0
12 #include "mt8195-afe-clk.h"
13 #include "mt8195-afe-common.h"
14 #include "mt8195-reg.h"
15 #include "../common/mtk-dai-adda-common.h"
40 struct mt8195_afe_private *afe_priv = afe->platform_priv; in mt8195_adda_mtkaif_init()
41 struct mtkaif_param *param = &afe_priv->mtkaif_params; in mt8195_adda_mtkaif_init()
51 regmap_update_bits(afe->regmap, AFE_ADDA_MTKAIF_CFG0, mask, val); in mt8195_adda_mtkaif_init()
52 regmap_update_bits(afe->regmap, AFE_ADDA6_MTKAIF_CFG0, mask, val); in mt8195_adda_mtkaif_init()
56 regmap_update_bits(afe->regmap, AFE_AUD_PAD_TOP, mask, val); in mt8195_adda_mtkaif_init()
[all …]
/linux/sound/soc/meson/
H A Daxg-pdm.c1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
12 #include <sound/soc-dai.h>
53 #define PDM_CHAN_CTRL_POINTER_MAX ((1 << PDM_CHAN_CTRL_POINTER_WIDTH) - 1)
134 axg_pdm_enable(priv->map); in axg_pdm_trigger()
140 axg_pdm_disable(priv->map); in axg_pdm_trigger()
144 return -EINVAL; in axg_pdm_trigger()
150 const struct axg_pdm_filters *filters = priv->cfg->filters; in axg_pdm_get_os()
151 unsigned int os = filters->hcic.ds; in axg_pdm_get_os()
160 os *= filters->lpf[i].ds; in axg_pdm_get_os()
166 unsigned int rate) in axg_pdm_set_sysclk() argument
[all …]

12