/linux-6.12.1/sound/soc/ti/ |
D | omap-dmic.c | 3 * omap-dmic.c -- OMAP ASoC DMIC DAI driver 30 #include "omap-dmic.h" 51 static inline void omap_dmic_write(struct omap_dmic *dmic, u16 reg, u32 val) in omap_dmic_write() argument 53 writel_relaxed(val, dmic->io_base + reg); in omap_dmic_write() 56 static inline int omap_dmic_read(struct omap_dmic *dmic, u16 reg) in omap_dmic_read() argument 58 return readl_relaxed(dmic->io_base + reg); in omap_dmic_read() 61 static inline void omap_dmic_start(struct omap_dmic *dmic) in omap_dmic_start() argument 63 u32 ctrl = omap_dmic_read(dmic, OMAP_DMIC_CTRL_REG); in omap_dmic_start() 66 omap_dmic_write(dmic, OMAP_DMIC_DMAENABLE_SET_REG, in omap_dmic_start() 69 omap_dmic_write(dmic, OMAP_DMIC_CTRL_REG, ctrl | dmic->ch_enabled); in omap_dmic_start() [all …]
|
/linux-6.12.1/sound/soc/tegra/ |
D | tegra210_dmic.c | 3 // tegra210_dmic.c - Tegra210 DMIC driver 45 struct tegra210_dmic *dmic = dev_get_drvdata(dev); in tegra210_dmic_runtime_suspend() local 47 regcache_cache_only(dmic->regmap, true); in tegra210_dmic_runtime_suspend() 48 regcache_mark_dirty(dmic->regmap); in tegra210_dmic_runtime_suspend() 50 clk_disable_unprepare(dmic->clk_dmic); in tegra210_dmic_runtime_suspend() 57 struct tegra210_dmic *dmic = dev_get_drvdata(dev); in tegra210_dmic_runtime_resume() local 60 err = clk_prepare_enable(dmic->clk_dmic); in tegra210_dmic_runtime_resume() 62 dev_err(dev, "failed to enable DMIC clock, err: %d\n", err); in tegra210_dmic_runtime_resume() 66 regcache_cache_only(dmic->regmap, false); in tegra210_dmic_runtime_resume() 67 regcache_sync(dmic->regmap); in tegra210_dmic_runtime_resume() [all …]
|
/linux-6.12.1/sound/soc/codecs/ |
D | dmic.c | 3 * dmic.c -- SoC audio for Generic Digital MICs 26 struct dmic { struct 29 /* Delay after DMIC mode switch */ 37 struct dmic *dmic = snd_soc_component_get_drvdata(component); in dmic_daiops_trigger() argument 41 if (dmic->modeswitch_delay) in dmic_daiops_trigger() 42 mdelay(dmic->modeswitch_delay); in dmic_daiops_trigger() 57 struct dmic *dmic = snd_soc_component_get_drvdata(component); in dmic_aif_event() local 61 if (dmic->gpio_en) in dmic_aif_event() 62 gpiod_set_value_cansleep(dmic->gpio_en, 1); in dmic_aif_event() 64 if (dmic->wakeup_delay) in dmic_aif_event() [all …]
|
D | lpass-tx-macro.c | 41 /* Default divider for AMIC and DMIC clock: DIV2 */ 760 unsigned int dmic; in tx_macro_update_smic_sel_v9() local 769 dmic = TX_ADC_TO_DMIC(val); in tx_macro_update_smic_sel_v9() 770 dmic_clk_reg = CDC_TX_TOP_CSR_SWR_DMICn_CTL(dmic); in tx_macro_update_smic_sel_v9() 782 unsigned int dmic; in tx_macro_update_smic_sel_v9_2() local 786 /* MSM DMIC */ in tx_macro_update_smic_sel_v9_2() 790 dmic = TX_ADC_TO_DMIC(val); in tx_macro_update_smic_sel_v9_2() 791 dmic_clk_reg = CDC_TX_TOP_CSR_SWR_DMICn_CTL(dmic); in tx_macro_update_smic_sel_v9_2() 846 if (widget->shift) /* MSM DMIC */ in tx_macro_put_dec_enum() 919 u16 adc_mux_reg, adc_reg, adc_n, dmic; in tx_macro_enable_dec() local [all …]
|
D | lpass-va-macro.c | 607 u32 dmic, bool enable) in va_dmic_clk_enable() argument 616 switch (dmic) { in va_dmic_clk_enable() 646 dev_err(component->dev, "%s: Invalid DMIC Selection\n", in va_dmic_clk_enable() 721 unsigned int dmic = w->shift; in va_macro_enable_dmic() local 725 va_dmic_clk_enable(comp, dmic, true); in va_macro_enable_dmic() 728 va_dmic_clk_enable(comp, dmic, false); in va_macro_enable_dmic() 1127 SND_SOC_DAPM_MUX("VA DMIC MUX0", SND_SOC_NOPM, 0, 0, &va_dmic0_mux), 1128 SND_SOC_DAPM_MUX("VA DMIC MUX1", SND_SOC_NOPM, 0, 0, &va_dmic1_mux), 1129 SND_SOC_DAPM_MUX("VA DMIC MUX2", SND_SOC_NOPM, 0, 0, &va_dmic2_mux), 1130 SND_SOC_DAPM_MUX("VA DMIC MUX3", SND_SOC_NOPM, 0, 0, &va_dmic3_mux), [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/sound/ |
D | nvidia,tegra210-dmic.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra210-dmic.yaml# 7 title: Tegra210 DMIC Controller 10 The Digital MIC (DMIC) Controller is used to interface with Pulse 12 Pulse Coded Modulation (PCM) signals. DMIC can be viewed as a PDM 24 pattern: "^dmic@[0-9a-f]*$" 28 - const: nvidia,tegra210-dmic 31 - nvidia,tegra234-dmic 32 - nvidia,tegra194-dmic 33 - nvidia,tegra186-dmic 34 - const: nvidia,tegra210-dmic [all …]
|
D | nvidia,tegra-audio-rt5677.yaml | 50 - DMIC L1 51 - DMIC L2 52 - DMIC L3 53 - DMIC L4 54 - DMIC R1 55 - DMIC R2 56 - DMIC R3 57 - DMIC R4 84 "DMIC L1", "Internal Mic 1", 85 "DMIC R1", "Internal Mic 1", [all …]
|
D | dmic-codec.yaml | 4 $id: http://devicetree.org/schemas/sound/dmic-codec.yaml# 7 title: Generic PDM Digital microphone (DMIC) codec 17 const: dmic-codec 23 description: GPIO specifier for DMIC to control start and stop 34 description: Delay (in ms) to complete DMIC mode switch 37 description: Delay (in ms) after enabling the DMIC 48 dmic { 49 compatible = "dmic-codec";
|
D | omap-dmic.txt | 4 - compatible: "ti,omap4-dmic" 8 - interrupts: Interrupt number for DMIC 9 - ti,hwmods: Name of the hwmod associated with OMAP dmic IP 13 dmic: dmic@4012e000 { 14 compatible = "ti,omap4-dmic"; 19 ti,hwmods = "dmic";
|
D | dlg,da7213.yaml | 43 dlg,dmic-data-sel: 44 description: DMIC channel select based on clock edge 47 dlg,dmic-samplephase: 48 description: When to sample audio from DMIC 51 dlg,dmic-clkrate: 52 description: DMIC clock frequency (Hz) 99 dlg,dmic-data-sel = "lrise_rfall"; 100 dlg,dmic-samplephase = "between_clkedge"; 101 dlg,dmic-clkrate = <3000000>;
|
D | allwinner,sun50i-h6-dmic.yaml | 4 $id: http://devicetree.org/schemas/sound/allwinner,sun50i-h6-dmic.yaml# 7 title: Allwinner H6 DMIC 20 - allwinner,sun20i-d1-dmic 21 - const: allwinner,sun50i-h6-dmic 22 - const: allwinner,sun50i-h6-dmic 75 dmic: dmic@5095000 { 77 compatible = "allwinner,sun50i-h6-dmic";
|
D | rockchip,rk3399-gru-sound.txt | 10 - dmic-wakeup-delay-ms : specify delay time (ms) for DMIC ready. 11 If this option is specified, which means it's required dmic need 12 delay for DMIC to ready so that rt5514 can avoid recording before 13 DMIC send valid data 21 dmic-wakeup-delay-ms = <20>;
|
D | rt5682.txt | 56 - realtek,dmic-clk-rate-hz : Set the clock rate (hz) for the requirement of 57 the particular DMIC. 59 - realtek,dmic-delay-ms : Set the delay time (ms) for the requirement of 60 the particular DMIC. 62 - realtek,dmic-clk-driving-high : Set the high driving of the DMIC clock out. 68 * DMIC L1 69 * DMIC R1
|
D | omap-abe-twl6040.txt | 14 - ti,dmic: phandle for the OMAP dmic node if the machine have it connected 54 * DMic 66 ti,dmic = <&dmic>; 89 "DMic", "Digital Mic",
|
/linux-6.12.1/sound/soc/mediatek/mt8365/ |
D | mt8365-dai-dmic.c | 3 * MediaTek 8365 ALSA SoC Audio DAI DMIC Control 215 .name = "DMIC", 218 .stream_name = "DMIC Capture", 241 SOC_SINGLE("DMIC IIR Switch", AFE_DMIC0_UL_SRC_CON0, DMIC_TOP_CON_IIR_ON, 1, 0), 242 SOC_ENUM("DMIC IIR Mode", iir_mode), 248 SND_SOC_DAPM_INPUT("DMIC In"), 254 {"I14", NULL, "DMIC Capture"}, 255 {"I15", NULL, "DMIC Capture"}, 256 {"I16", NULL, "DMIC Capture"}, 257 {"I17", NULL, "DMIC Capture"}, [all …]
|
/linux-6.12.1/sound/soc/intel/avs/boards/ |
D | dmic.c | 14 SND_SOC_DAILINK_DEF(dmic_pin, DAILINK_COMP_ARRAY(COMP_CPU("DMIC Pin"))); 15 SND_SOC_DAILINK_DEF(dmic_wov_pin, DAILINK_COMP_ARRAY(COMP_CPU("DMIC WoV Pin"))); 16 SND_SOC_DAILINK_DEF(dmic_codec, DAILINK_COMP_ARRAY(COMP_CODEC("dmic-codec", "dmic-hifi"))); 23 .name = "DMIC", 31 .name = "DMIC WoV", 42 SND_SOC_DAPM_MIC("SoC DMIC", NULL), 46 {"DMic", NULL, "SoC DMIC"}, 99 MODULE_DESCRIPTION("Intel DMIC machine driver");
|
/linux-6.12.1/sound/soc/amd/acp/ |
D | acp-legacy-mach.c | 28 .dmic_cpu_id = DMIC, 31 .dmic_codec_id = DMIC, 38 .dmic_cpu_id = DMIC, 41 .dmic_codec_id = DMIC, 48 .dmic_cpu_id = DMIC, 51 .dmic_codec_id = DMIC, 57 .dmic_cpu_id = DMIC, 59 .dmic_codec_id = DMIC, 66 .dmic_cpu_id = DMIC, 69 .dmic_codec_id = DMIC, [all …]
|
D | acp-sof-mach.c | 27 .dmic_cpu_id = DMIC, 30 .dmic_codec_id = DMIC, 36 .dmic_cpu_id = DMIC, 39 .dmic_codec_id = DMIC, 45 .dmic_cpu_id = DMIC, 48 .dmic_codec_id = DMIC, 55 .dmic_cpu_id = DMIC, 58 .dmic_codec_id = DMIC, 65 .dmic_cpu_id = DMIC, 68 .dmic_codec_id = DMIC, [all …]
|
/linux-6.12.1/sound/soc/intel/boards/ |
D | bdw-rt5650.c | 30 SND_SOC_DAPM_MIC("DMIC Pair1", NULL), 31 SND_SOC_DAPM_MIC("DMIC Pair2", NULL), 46 * DMIC Pair1 are the two DMICs connected on the DMICN1 connector. 47 * DMIC Pair2 are the two DMICs connected on the DMICN2 connector. 48 * Facing the camera, DMIC Pair1 are on the left side, DMIC Pair2 51 {"DMIC L1", NULL, "DMIC Pair1"}, 52 {"DMIC R1", NULL, "DMIC Pair1"}, 53 {"DMIC L2", NULL, "DMIC Pair2"}, 54 {"DMIC R2", NULL, "DMIC Pair2"}, 65 SOC_DAPM_PIN_SWITCH("DMIC Pair1"), [all …]
|
/linux-6.12.1/sound/soc/sdw_utils/ |
D | soc_sdw_dmic.c | 7 * soc_sdw_dmic - Helpers to handle dmic from generic machine driver 16 SND_SOC_DAPM_MIC("SoC DMIC", NULL), 21 {"DMic", NULL, "SoC DMIC"}, 32 dev_err(card->dev, "DMic widget addition failed: %d\n", ret); in asoc_sdw_dmic_init() 41 dev_err(card->dev, "DMic map addition failed: %d\n", ret); in asoc_sdw_dmic_init()
|
/linux-6.12.1/sound/soc/amd/renoir/ |
D | acp3x-rn.c | 3 // Machine driver for AMD Renoir platform using DMIC 22 DAILINK_COMP_ARRAY(COMP_CODEC("dmic-codec.0", 23 "dmic-hifi"))); 30 .name = "acp3x-dmic-capture", 31 .stream_name = "DMIC capture", 75 MODULE_DESCRIPTION("AMD Renoir support for DMIC");
|
/linux-6.12.1/sound/soc/amd/ps/ |
D | ps-mach.c | 3 * Machine driver for AMD Pink Sardine platform using DMIC 24 DAILINK_COMP_ARRAY(COMP_CODEC("dmic-codec.0", 25 "dmic-hifi"))); 32 .name = "acp63-dmic-capture", 33 .stream_name = "DMIC capture", 78 MODULE_DESCRIPTION("AMD Pink Sardine support for DMIC");
|
/linux-6.12.1/sound/soc/amd/ |
D | acp3x-rt5682-max9836.c | 357 SOC_DAPM_ENUM_EXT("DMIC Select Mux", acp3x_dmic_enum, 364 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, 373 {"Dmic Mux", "Front Mic", "DMIC"}, 374 {"Dmic Mux", "Rear Mic", "DMIC"}, 399 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, 409 {"Dmic Mux", "Front Mic", "DMIC"}, 410 {"Dmic Mux", "Rear Mic", "DMIC"}, 440 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, 449 {"Dmic Mux", "Front Mic", "DMIC"}, 450 {"Dmic Mux", "Rear Mic", "DMIC"}, [all …]
|
D | Kconfig | 65 tristate "AMD Renoir support for DMIC" 69 This option enables machine driver for DMIC 106 tristate "AMD YC support for DMIC" 111 using dmic. ACP IP has PDM Decoder block with DMA controller. 112 DMIC can be connected directly to ACP IP. 176 tristate "AMD PINK SARDINE support for DMIC" 181 using dmic. ACP IP has PDM Decoder block with DMA controller. 182 DMIC can be connected directly to ACP IP.
|
/linux-6.12.1/arch/riscv/boot/dts/allwinner/ |
D | sun20i-d1-lichee-rv-dock.dts | 18 dmic_codec: dmic-codec { 19 compatible = "dmic-codec"; 24 dmic-sound { 26 simple-audio-card,name = "DMIC"; 37 sound-dai = <&dmic>; 52 &dmic {
|