/Linux-v5.15/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 …]
|
D | omap-abe-twl6040.c | 20 #include "omap-dmic.h" 32 DAILINK_COMP_ARRAY(COMP_CODEC("dmic-codec", 33 "dmic-hifi")), 87 printk(KERN_ERR "can't set DMIC cpu system clock\n"); in omap_abe_dmic_hw_params() 93 printk(KERN_ERR "can't set DMIC output clock\n"); in omap_abe_dmic_hw_params() 199 {"DMic", NULL, "Digital Mic"}, 254 priv->dai_links[0].name = "DMIC"; in omap_abe_probe() 267 dai_node = of_parse_phandle(node, "ti,dmic", 0); in omap_abe_probe() 271 priv->dai_links[1].stream_name = "DMIC Capture"; in omap_abe_probe() 327 dmic_codec_dev = platform_device_register_simple("dmic-codec", -1, NULL, in omap_abe_init() [all …]
|
/Linux-v5.15/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-va-macro.c | 562 u32 dmic, bool enable) in va_dmic_clk_enable() argument 571 switch (dmic) { in va_dmic_clk_enable() 601 dev_err(component->dev, "%s: Invalid DMIC Selection\n", in va_dmic_clk_enable() 676 unsigned int dmic = w->shift; in va_macro_enable_dmic() local 680 va_dmic_clk_enable(comp, dmic, true); in va_macro_enable_dmic() 683 va_dmic_clk_enable(comp, dmic, false); in va_macro_enable_dmic() 1082 SND_SOC_DAPM_MUX("VA DMIC MUX0", SND_SOC_NOPM, 0, 0, &va_dmic0_mux), 1083 SND_SOC_DAPM_MUX("VA DMIC MUX1", SND_SOC_NOPM, 0, 0, &va_dmic1_mux), 1084 SND_SOC_DAPM_MUX("VA DMIC MUX2", SND_SOC_NOPM, 0, 0, &va_dmic2_mux), 1085 SND_SOC_DAPM_MUX("VA DMIC MUX3", SND_SOC_NOPM, 0, 0, &va_dmic3_mux), [all …]
|
D | rt5670.c | 735 * set_dmic_clk - Set parameter of dmic. 741 * Choose dmic clock between 1MHz and 3MHz. 755 dev_err(component->dev, "Failed to set DMIC clock\n"); in set_dmic_clk() 1241 "DAC MIX", "DMIC" 1265 SOC_DAPM_ENUM("Stereo1 DMIC source", rt5670_stereo1_dmic_enum); 1271 SOC_DAPM_ENUM("Stereo2 DMIC source", rt5670_stereo2_dmic_enum); 1286 "Mono DAC MIXL", "DMIC" 1304 SOC_DAPM_ENUM("Mono DMIC left source", rt5670_mono_dmic_l_enum); 1310 SOC_DAPM_ENUM("Mono DMIC Right source", rt5670_mono_dmic_r_enum); 1323 "Mono DAC MIXR", "DMIC" [all …]
|
D | rt5514.c | 440 SOC_DAPM_SINGLE("DMIC Switch", RT5514_DOWNFILTER0_CTRL1, 447 SOC_DAPM_SINGLE("DMIC Switch", RT5514_DOWNFILTER0_CTRL2, 454 SOC_DAPM_SINGLE("DMIC Switch", RT5514_DOWNFILTER1_CTRL1, 461 SOC_DAPM_SINGLE("DMIC Switch", RT5514_DOWNFILTER1_CTRL2, 467 /* DMIC Source */ 477 SOC_DAPM_ENUM("Stereo1 DMIC Source", rt5514_stereo1_dmic_enum); 484 SOC_DAPM_ENUM("Stereo2 DMIC Source", rt5514_stereo2_dmic_enum); 487 * rt5514_calc_dmic_clk - Calculate the frequency divider parameter of dmic. 492 * Choose divider parameter that gives the highest possible DMIC frequency in 506 /* find divider that gives DMIC frequency below 3.072MHz */ in rt5514_calc_dmic_clk() [all …]
|
/Linux-v5.15/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-v5.15/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 Device Tree Bindings 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 21 pattern: "^dmic@[0-9a-f]*$" 25 - const: nvidia,tegra210-dmic 28 - nvidia,tegra194-dmic 29 - nvidia,tegra186-dmic 30 - const: nvidia,tegra210-dmic 39 const: dmic [all …]
|
D | da7213.txt | 17 - dlg,dmic-data-sel : DMIC channel select based on clock edge. 19 - dlg,dmic-samplephase : When to sample audio from DMIC. 21 - dlg,dmic-clkrate : DMIC clock frequency (Hz). 42 dlg,dmic-data-sel = "lrise_rfall"; 43 dlg,dmic-samplephase = "between_clkedge"; 44 dlg,dmic-clkrate = <3000000>;
|
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 | dmic.txt | 1 Device-Tree bindings for Digital microphone (DMIC) codec 6 - compatible: should be "dmic-codec". 9 - dmicen-gpios: GPIO specifier for dmic to control start and stop 11 - wakeup-delay-ms: Delay (in ms) after enabling the DMIC 12 - modeswitch-delay-ms: Delay (in ms) to complete DMIC mode switch 16 dmic_codec: dmic@0 { 17 compatible = "dmic-codec";
|
D | rt5682.txt | 41 - realtek,dmic-clk-rate-hz : Set the clock rate (hz) for the requirement of 42 the particular DMIC. 44 - realtek,dmic-delay-ms : Set the delay time (ms) for the requirement of 45 the particular DMIC. 47 - realtek,dmic-clk-driving-high : Set the high driving of the DMIC clock out. 51 * DMIC L1 52 * DMIC R1
|
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 | nvidia,tegra-audio-rt5677.txt | 33 - nvidia,dmic-clk-en-gpios : The GPIO that gates DMIC clock signal 48 "DMIC L1", "Internal Mic 1", 49 "DMIC R1", "Internal Mic 1", 50 "DMIC L2", "Internal Mic 2", 51 "DMIC R2", "Internal Mic 2", 61 nvidia,dmic-clk-en-gpios = <&rt5677 2 GPIO_ACTIVE_HIGH>;
|
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",
|
D | rt5651.txt | 16 - realtek,dmic-en 17 Boolean. true if dmic is used. 43 * DMIC L1 44 * DMIC R1 61 realtek,dmic-en = "true";
|
D | rt5645.txt | 47 * DMIC L1 48 * DMIC R1 49 * DMIC L2 50 * DMIC R2 73 realtek,dmic-en = "true";
|
D | rt5665.txt | 39 * DMIC L1 40 * DMIC R1 41 * DMIC L2 42 * DMIC R2
|
D | nvidia,tegra210-ahub.yaml | 13 external interfaces such as I2S, DMIC, DSPK. It interfaces with ADMA 76 '^dmic@[0-9a-f]+$': 78 $ref: nvidia,tegra210-dmic.yaml# 153 dmic@702d4000 { 154 compatible = "nvidia,tegra210-dmic"; 157 clock-names = "dmic";
|
/Linux-v5.15/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 …]
|
D | sof_sdw_dmic.c | 5 * sof_sdw_dmic - Helpers to handle dmic from generic machine driver 14 SND_SOC_DAPM_MIC("SoC DMIC", NULL), 19 {"DMic", NULL, "SoC DMIC"}, 30 dev_err(card->dev, "DMic widget addition failed: %d\n", ret); in sof_sdw_dmic_init() 39 dev_err(card->dev, "DMic map addition failed: %d\n", ret); in sof_sdw_dmic_init()
|
/Linux-v5.15/sound/soc/amd/ |
D | acp3x-rt5682-max9836.c | 344 SOC_DAPM_ENUM_EXT("DMIC Select Mux", acp3x_dmic_enum, 351 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, 360 {"Dmic Mux", "Front Mic", "DMIC"}, 361 {"Dmic Mux", "Rear Mic", "DMIC"}, 386 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, 396 {"Dmic Mux", "Front Mic", "DMIC"}, 397 {"Dmic Mux", "Rear Mic", "DMIC"}, 427 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, 436 {"Dmic Mux", "Front Mic", "DMIC"}, 437 {"Dmic Mux", "Rear Mic", "DMIC"}, [all …]
|
/Linux-v5.15/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",
|
/Linux-v5.15/sound/soc/ux500/ |
D | mop500_ab8500.c | 181 SOC_DAPM_PIN_SWITCH("DMic 1"), 182 SOC_DAPM_PIN_SWITCH("DMic 2"), 183 SOC_DAPM_PIN_SWITCH("DMic 3"), 184 SOC_DAPM_PIN_SWITCH("DMic 4"), 185 SOC_DAPM_PIN_SWITCH("DMic 5"), 186 SOC_DAPM_PIN_SWITCH("DMic 6"), 422 ret |= snd_soc_dapm_disable_pin(dapm, "DMic 1"); in mop500_ab8500_machine_init() 423 ret |= snd_soc_dapm_disable_pin(dapm, "DMic 2"); in mop500_ab8500_machine_init() 424 ret |= snd_soc_dapm_disable_pin(dapm, "DMic 3"); in mop500_ab8500_machine_init() 425 ret |= snd_soc_dapm_disable_pin(dapm, "DMic 4"); in mop500_ab8500_machine_init() [all …]
|
/Linux-v5.15/sound/soc/qcom/ |
D | sc7180.c | 287 SND_SOC_DAPM_MIC("DMIC", NULL), 299 SOC_DAPM_ENUM_EXT("DMIC Select Mux", sc7180_dmic_enum, 305 SND_SOC_DAPM_MIC("DMIC", NULL), 306 SND_SOC_DAPM_MUX("Dmic Mux", SND_SOC_NOPM, 0, 0, &sc7180_dmic_mux_control), 310 {"Dmic Mux", "Front Mic", "DMIC"}, 311 {"Dmic Mux", "Rear Mic", "DMIC"}, 338 if (of_property_read_bool(dev->of_node, "dmic-gpios")) { in sc7180_snd_platform_probe() 343 data->dmic_sel = devm_gpiod_get(&pdev->dev, "dmic", GPIOD_OUT_LOW); in sc7180_snd_platform_probe() 345 dev_err(&pdev->dev, "DMIC gpio failed err=%ld\n", PTR_ERR(data->dmic_sel)); in sc7180_snd_platform_probe()
|