| /linux/sound/soc/tegra/ |
| H A D | tegra_audio_graph_card.c | 1 // 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 D | Kconfig | 1 # 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 modul [all...] |
| /linux/include/sound/sof/ |
| H A D | dai-intel.h | 1 /* 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 D | intel-nhlt.c | 1 // 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 D | mt8183-dai-adda.c | 1 // 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-commo 274 unsigned int rate = params_rate(params); mtk_dai_adda_hw_params() local [all...] |
| /linux/sound/soc/mediatek/mt8186/ |
| H A D | mt8186-dai-adda.c | 1 // 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-interconnectio 561 unsigned int rate = params_rate(params); mtk_dai_adda_hw_params() local [all...] |
| /linux/sound/soc/codecs/ |
| H A D | lpass-va-macro.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. 6 #include <linux/clk-provider.h> 17 #include <sound/soc-dapm.h> 20 #include "lpass-macro-common.h" 173 static const DECLARE_TLV_DB_SCALE(digital_gain, -8400, 100, -8400); 462 struct regmap *regmap = va->regmap; in va_clk_rsc_fs_gen_request() 495 struct regmap *regmap = va->regmap; in va_macro_mclk_enable() 511 struct snd_soc_component *comp = snd_soc_dapm_to_component(w->dapm); in va_macro_mclk_event() 516 return clk_prepare_enable(va->fsgen); in va_macro_mclk_event() [all …]
|
| H A D | cs42l73.c | 1 // 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 - Powe 1020 cs42l73_get_xspfs_coeff(u32 rate) cs42l73_get_xspfs_coeff() argument [all...] |
| H A D | max9867.c | 1 // 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->regma in max9867_filter_get() 329 unsigned long int rate, ratio; max9867_dai_hw_params() local [all...] |
| H A D | wcd9335.c | 1 // 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 - 65 396 int rate; global() member 1614 wcd9335_set_mix_interpolator_rate(struct snd_soc_dai * dai,int rate_val,u32 rate) wcd9335_set_mix_interpolator_rate() argument 1640 wcd9335_set_prim_interpolator_rate(struct snd_soc_dai * dai,u8 rate_val,u32 rate) wcd9335_set_prim_interpolator_rate() argument 1686 wcd9335_set_interpolator_rate(struct snd_soc_dai * dai,u32 rate) wcd9335_set_interpolator_rate() argument 1791 wcd9335_set_decimator_rate(struct snd_soc_dai * dai,u8 rate_val,u32 rate) wcd9335_set_decimator_rate() argument 2866 unsigned int dmic; wcd9335_codec_enable_dmic() local [all...] |
| H A D | max98090.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * max98090.c -- MAX98090 ALSA SoC Audio driver 5 * Copyright 2011-2012 Maxim Integrated Products 30 { 0x05, 0x00 }, /* 05 Sample Rate Quick */ 231 { 0xC2, 0x00 }, /* C2 Sample Rate */ 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); 303 0, 3, TLV_DB_SCALE_ITEM(-600, 300, 0), [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() 751 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -652 2701 rt5682_wclk_set_rate(struct clk_hw * hw,unsigned long rate,unsigned long parent_rate) rt5682_wclk_set_rate() argument 2782 rt5682_bclk_get_factor(unsigned long rate,unsigned long parent_rate) rt5682_bclk_get_factor() argument 2823 rt5682_bclk_set_rate(struct clk_hw * hw,unsigned long rate,unsigned long parent_rate) rt5682_bclk_set_rate() argument [all...] |
| H A D | es8316.c | 1 // 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, -960 [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-frequenc 471 u32 rate; global() member 516 adc3xxx_get_divs(struct device * dev,int mclk,int rate,int pll_mode) adc3xxx_get_divs() argument [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-wcl 1114 get_clk_info(int sclk,int rate) get_clk_info() argument 2637 rt5682s_wclk_set_rate(struct clk_hw * hw,unsigned long rate,unsigned long parent_rate) rt5682s_wclk_set_rate() argument 2707 rt5682s_bclk_get_factor(unsigned long rate,unsigned long parent_rate) rt5682s_bclk_get_factor() argument 2747 rt5682s_bclk_set_rate(struct clk_hw * hw,unsigned long rate,unsigned long parent_rate) rt5682s_bclk_set_rate() argument [all...] |
| H A D | da7213.c | 1 // 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 /* -78dB to 12dB */ 43 0x08, 0x7f, TLV_DB_SCALE_ITEM(-7800, 75, 0) 52 static const DECLARE_TLV_DB_SCALE(mic_vol_tlv, -600, 600, 0); 53 static const DECLARE_TLV_DB_SCALE(mixin_gain_tlv, -450, 150, 0); 54 static const DECLARE_TLV_DB_SCALE(eq_gain_tlv, -1050, 150, 0); [all …]
|
| H A D | nau8821.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // nau8821.c -- Nuvoton NAU88L21 audio codec driver 7 // Co-author: Seven Lee <wtli@nuvoton.com> 33 static int quirk_override = -1; 35 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 98 /* over sampling rate */ [all...] |
| H A D | rt5677.c | 1 // 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->componen in rt5677_dsp_mode_i2c_write_addr() 1090 int idx, rate; set_dmic_clk() local [all...] |
| H A D | wm8903.c | 1 // 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 - Bia 1331 int rate; global() member 1420 int rate; global() member [all...] |
| H A D | tas2552.c | 1 // 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 …]
|
| /linux/sound/soc/amd/ |
| H A D | acp-da7219-max98357a.c | 1 // 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 D | fsl-asoc-card.c | 1 // 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 - CP 303 struct snd_interval *rate; be_hw_params_fixup() local [all...] |
| /linux/sound/soc/mediatek/mt8192/ |
| H A D | mt8192-dai-adda.c | 1 // 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-interconnectio 1067 unsigned int rate = params_rate(params); mtk_dai_adda_hw_params() local [all...] |
| /linux/sound/soc/mediatek/mt8195/ |
| H A D | mt8195-dai-adda.c | 1 // 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-add 151 mtk_adda_ul_mictype(struct mtk_base_afe * afe,int adda,bool dmic) mtk_adda_ul_mictype() argument 556 mtk_dai_da_configure(struct mtk_base_afe * afe,unsigned int rate,int id) mtk_dai_da_configure() argument 594 mtk_dai_ad_configure(struct mtk_base_afe * afe,unsigned int rate,int id) mtk_dai_ad_configure() argument 624 unsigned int rate = params_rate(params); mtk_dai_adda_hw_params() local [all...] |
| /linux/sound/soc/meson/ |
| H A D | axg-pdm.c | 1 // 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 …]
|