/kernel/linux/linux-5.10/Documentation/devicetree/bindings/pinctrl/ |
D | cirrus,lochnagar.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - patches@opensource.cirrus.com 14 Smart CODEC and Amp devices. It allows the connection of most Cirrus 15 Logic devices on mini-cards, as well as allowing connection of various 26 [2] Pinctrl: ../pinctrl/pinctrl-bindings.txt 29 [3] include/dt-bindings/pinctrl/lochnagar.h 37 - cirrus,lochnagar-pinctrl 39 gpio-controller: true [all …]
|
/kernel/linux/linux-5.10/sound/soc/sunxi/ |
D | sun8i-codec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * This driver supports the digital controls for the internal codec 6 * (C) Copyright 2010-2016 9 * Mylène Josserand <mylene.josserand@free-electrons.com> 23 #include <sound/soc-dapm.h> 114 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume() 116 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume() 129 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend() 130 regcache_mark_dirty(scodec->regmap); in sun8i_codec_runtime_suspend() 164 return -EINVAL; in sun8i_codec_get_hw_rate() [all …]
|
/kernel/linux/linux-5.10/sound/soc/intel/boards/ |
D | cht_bsw_rt5645.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cht-bsw-rt5645.c - ASoc Machine driver for Intel Cherryview-based platforms 4 * Cherrytrail and Braswell, with RT5645 codec. 25 #include <sound/soc-acpi.h> 27 #include "../atom/sst-atom-controls.h" 28 #include "../common/soc-intel-quirks.h" 31 #define CHT_CODEC_DAI1 "rt5645-aif1" 32 #define CHT_CODEC_DAI2 "rt5645-aif2" 48 #define CHT_RT5645_SSP2_AIF2 BIT(16) /* default is using AIF1 */ 70 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() [all …]
|
D | haswell.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <sound/soc-acpi.h> 30 /* CODEC BE connections */ 31 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 32 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 44 rate->min = rate->max = 48000; in haswell_ssp0_fixup() 45 channels->min = channels->max = 2; in haswell_ssp0_fixup() 63 dev_err(rtd->dev, "can't set codec sysclk configuration\n"); in haswell_rt5640_hw_params() 67 /* set correct codec filter for DAI format and clock config */ in haswell_rt5640_hw_params() 68 snd_soc_component_update_bits(codec_dai->component, 0x83, 0xffff, 0x8000); in haswell_rt5640_hw_params() [all …]
|
D | cht_bsw_rt5672.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cht_bsw_rt5672.c - ASoc Machine driver for Intel Cherryview-based platforms 4 * Cherrytrail and Braswell, with RT5672 codec. 21 #include <sound/soc-acpi.h> 23 #include "../atom/sst-atom-controls.h" 26 /* The platform clock #3 outputs 19.2Mhz clock to codec as I2S MCLK */ 28 #define CHT_CODEC_DAI "rt5670-aif1" 51 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 52 struct snd_soc_card *card = dapm->card; in platform_clock_control() 59 dev_err(card->dev, "Codec dai not found; Unable to set platform clock\n"); in platform_clock_control() [all …]
|
D | bdw-rt5650.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ASoC machine driver for Intel Broadwell platforms with RT5650 codec 17 #include <sound/soc-acpi.h> 56 /* CODEC BE connections */ 57 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 58 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 91 /* The ADSP will covert the FE rate to 48k, max 4-channels */ in broadwell_ssp0_fixup() 92 rate->min = rate->max = 48000; in broadwell_ssp0_fixup() 93 chan->min = 2; in broadwell_ssp0_fixup() 94 chan->max = 4; in broadwell_ssp0_fixup() [all …]
|
D | broadwell.c | 1 // SPDX-License-Identifier: GPL-2.0-only 15 #include <sound/soc-acpi.h> 52 /* HP jack connectors - unknown if we have jack deteck */ 63 /* CODEC BE connections */ 64 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 65 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 70 struct snd_soc_component *component = asoc_rtd_to_codec(rtd, 0)->component; in broadwell_rt286_codec_init() 72 ret = snd_soc_card_jack_new(rtd->card, "Headset", in broadwell_rt286_codec_init() 92 rate->min = rate->max = 48000; in broadwell_ssp0_fixup() 93 chan->min = chan->max = 2; in broadwell_ssp0_fixup() [all …]
|
D | bdw-rt5677.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ASoC machine driver for Intel Broadwell platforms with RT5677 codec 18 #include <sound/soc-acpi.h> 30 struct snd_soc_dapm_context *dapm = w->dapm; in bdw_rt5677_event_hp() 31 struct snd_soc_card *card = dapm->card; in bdw_rt5677_event_hp() 37 gpiod_set_value_cansleep(bdw_rt5677->gpio_hp_en, in bdw_rt5677_event_hp() 71 /* CODEC BE connections */ 72 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 73 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 77 { "DSP Buffer", NULL, "SSP0 CODEC IN" }, [all …]
|
D | bxt_rt298.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Intel Broxton-P I2S Machine Driver 5 * Copyright (C) 2014-2016, Intel Corporation. All rights reserved. 16 #include <sound/soc-acpi.h> 81 /* HP jack connectors - unknown if we have jack detect */ 91 {"HDMI1", NULL, "hif5-0 Output"}, 92 {"HDMI2", NULL, "hif6-0 Output"}, 93 {"HDMI2", NULL, "hif7-0 Output"}, 95 /* CODEC BE connections */ 96 { "AIF1 Playback", NULL, "ssp5 Tx"}, [all …]
|
D | bytcr_rt5651.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * bytcr_rt5651.c - ASoc Machine driver for Intel Byt CR platform 29 #include <sound/soc-acpi.h> 31 #include "../atom/sst-atom-controls.h" 32 #include "../common/soc-intel-quirks.h" 68 #define BYT_RT5651_SSP2_AIF2 BIT(19) /* default is using AIF1 */ 80 /* jack-detect-source + inv + dmic-en + ovcd-th + -sf + terminating entry */ 92 /* Default: jack-detect on JD1_1, internal mic on in2, headsetmic on in3 */ 96 static int quirk_override = -1; 98 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); [all …]
|
D | bytcr_rt5640.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * byt_cr_dpcm_rt5640.c - ASoc Machine driver for Intel Byt CR platform 27 #include <sound/soc-acpi.h> 28 #include <dt-bindings/sound/rt5640.h> 30 #include "../atom/sst-atom-controls.h" 31 #include "../common/soc-intel-quirks.h" 68 #define BYT_RT5640_DIFF_MIC BIT(18) /* default is single-ended */ 69 #define BYT_RT5640_SSP2_AIF2 BIT(19) /* default is using AIF1 */ 83 /* in-diff or dmic-pin + jdsrc + ovcd-th + -sf + jd-inv + terminating entry */ 93 static int quirk_override = -1; [all …]
|
/kernel/linux/linux-5.10/sound/soc/samsung/ |
D | smdk_wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0+ 12 * SMDKV310: CFG5-1000, CFG7-111111 16 * Configure audio route as :- 20 * $ amixer sset 'DAC1R Mixer AIF1.1' on 21 * $ amixer sset 'DAC1L Mixer AIF1.1' on 82 struct snd_soc_dapm_context *dapm = &rtd->card->dapm; in smdk_wm8994_init_paiftx() 103 SND_SOC_DAILINK_DEFS(aif1, 104 DAILINK_COMP_ARRAY(COMP_CPU("samsung-i2s.0")), 105 DAILINK_COMP_ARRAY(COMP_CODEC("wm8994-codec", "wm8994-aif1")), 106 DAILINK_COMP_ARRAY(COMP_PLATFORM("samsung-i2s.0"))); [all …]
|
D | bells.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 #include <sound/soc-dapm.h> 59 struct bells_drvdata *bells = card->drvdata; in bells_set_bias_level() 62 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[DAI_DSP_CODEC]); in bells_set_bias_level() 64 component = codec_dai->component; in bells_set_bias_level() 66 if (dapm->dev != codec_dai->dev) in bells_set_bias_level() 71 if (dapm->bias_level != SND_SOC_BIAS_STANDBY) in bells_set_bias_level() 77 bells->sysclk_rate); in bells_set_bias_level() 81 if (bells->asyncclk_rate) { in bells_set_bias_level() 85 bells->asyncclk_rate); in bells_set_bias_level() [all …]
|
D | smdk_wm8994pcm.c | 1 // SPDX-License-Identifier: GPL-2.0+ 20 * SMDKC210, SMDKV310: CFG3- 1001, CFG5-1000, CFG7-111111 24 * Configure audio route as :- 28 * $ amixer sset 'DAC1R Mixer AIF1.1' on 29 * $ amixer sset 'DAC1L Mixer AIF1.1' on 57 dev_err(cpu_dai->dev, "%s:%d Sampling Rate %u not supported!\n", in smdk_wm8994_pcm_hw_params() 59 return -EINVAL; in smdk_wm8994_pcm_hw_params() 93 DAILINK_COMP_ARRAY(COMP_CPU("samsung-pcm.0")), 94 DAILINK_COMP_ARRAY(COMP_CODEC("wm8994-codec", "wm8994-aif1")), 95 DAILINK_COMP_ARRAY(COMP_PLATFORM("samsung-pcm.0"))); [all …]
|
D | arndale.c | 1 // SPDX-License-Identifier: GPL-2.0+ 13 #include <sound/soc-dapm.h> 75 * samsung/clk-exynos5250.c for list of available EPLL rates). in arndale_wm1811_hw_params() 76 * The CODEC uses clk API and the value will be rounded hence the MCLK1 in arndale_wm1811_hw_params() 89 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5631-aif1")), 106 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "wm8994-aif1")), 141 of_node_put(dai_link->cpus->of_node); in arndale_put_of_nodes() 142 of_node_put(dai_link->codecs->of_node); in arndale_put_of_nodes() 148 struct device_node *np = pdev->dev.of_node; in arndale_audio_probe() 153 card = (struct snd_soc_card *)of_device_get_match_data(&pdev->dev); in arndale_audio_probe() [all …]
|
D | aries_wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 #include <linux/input-event-codes.h> 100 if (!gpiod_get_value(priv->gpio_headset_detect)) { in headset_det_irq_thread() 103 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() 107 time_left_ms -= 20; in headset_det_irq_thread() 111 ret = regulator_enable(priv->reg_headset_micbias); in headset_det_irq_thread() 115 gpiod_set_value(priv->gpio_earpath_sel, 1); in headset_det_irq_thread() 117 ret = iio_read_channel_processed(priv->adc, &adc); in headset_det_irq_thread() 129 ret = regulator_disable(priv->reg_headset_micbias); in headset_det_irq_thread() 135 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() [all …]
|
/kernel/linux/linux-5.10/Documentation/sound/soc/ |
D | dpcm.rst | 14 way as the analog signal is routed in an ASoC codec driver. DPCM uses a DAPM 18 DPCM re-uses all the existing component codec, platform and DAI drivers without 23 ------------------------------------- 26 document for all examples :- 32 PCM0 <------------> * * <----DAI0-----> Codec Headset 34 PCM1 <------------> * * <----DAI1-----> Codec Speakers 36 PCM2 <------------> * * <----DAI2-----> MODEM 38 PCM3 <------------> * * <----DAI3-----> BT 40 * * <----DAI4-----> DMIC 42 * * <----DAI5-----> FM [all …]
|
/kernel/linux/linux-5.10/sound/soc/mediatek/mt8173/ |
D | mt8173-rt5650.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650.c -- MT8173 machine driver with RT5650 codecs 105 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_init() 106 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_init() 107 const char *codec_capture_dai = asoc_rtd_to_codec(runtime, 1)->name; in mt8173_rt5650_init() 114 if (!strcmp(codec_capture_dai, "rt5645-aif1")) { in mt8173_rt5650_init() 118 } else if (!strcmp(codec_capture_dai, "rt5645-aif2")) { in mt8173_rt5650_init() 123 dev_warn(card->dev, in mt8173_rt5650_init() 124 "Only one dai codec found in DTS, enabled rt5645 AD filter\n"); in mt8173_rt5650_init() 137 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_init() [all …]
|
D | mt8173-rt5650-rt5514.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650-rt5514.c -- MT8173 machine driver with RT5650/5514 codecs 75 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5514_init() 76 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_rt5514_init() 91 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_rt5514_init() 117 SND_SOC_DAILINK_DEFS(codec, 119 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5645-aif1"), 120 COMP_CODEC(NULL, "rt5514-aif1")), 123 /* Digital audio interface glue - connects codec <---> CPU */ 144 .name = "Codec", [all …]
|
D | mt8173-rt5650-rt5676.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650-rt5676.c -- MT8173 machine driver with RT5650/5676 codecs 79 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5676_init() 80 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_rt5676_init() 81 struct snd_soc_component *component_sub = asoc_rtd_to_codec(runtime, 1)->component; in mt8173_rt5650_rt5676_init() 104 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_rt5676_init() 139 SND_SOC_DAILINK_DEFS(codec, 141 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5645-aif1"), 142 COMP_CODEC(NULL, "rt5677-aif1")), 147 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "i2s-hifi")), [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/sound/ |
D | mt8173-rt5650.txt | 4 - compatible : "mediatek,mt8173-rt5650" 5 - mediatek,audio-codec: the phandles of rt5650 codecs 7 - mediatek,platform: the phandle of MT8173 ASoC platform 10 - codec-capture : the subnode of rt5650 codec capture 11 Required codec-capture subnode properties: 12 - sound-dai: audio codec dai name on capture path 13 <&rt5650 0> : Default setting. Connect rt5650 I2S1 for capture. (dai_name = rt5645-aif1) 14 <&rt5650 1> : Connect rt5650 I2S2 for capture. (dai_name = rt5645-aif2) 16 - mediatek,mclk: the MCLK source 23 compatible = "mediatek,mt8173-rt5650"; [all …]
|
D | nvidia,tegra-audio-rt5640.txt | 1 NVIDIA Tegra audio complex, with RT5640 CODEC 4 - compatible : "nvidia,tegra-audio-rt5640" 5 - clocks : Must contain an entry for each entry in clock-names. 6 See ../clocks/clock-bindings.txt for details. 7 - clock-names : Must include the following entries: 8 - pll_a 9 - pll_a_out0 10 - mclk (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) 11 - nvidia,model : The user-visible name of this sound complex. 12 - nvidia,audio-routing : A list of the connections between audio components. [all …]
|
D | nvidia,tegra-audio-rt5677.txt | 1 NVIDIA Tegra audio complex, with RT5677 CODEC 4 - compatible : "nvidia,tegra-audio-rt5677" 5 - clocks : Must contain an entry for each entry in clock-names. 6 See ../clocks/clock-bindings.txt for details. 7 - clock-names : Must include the following entries: 8 - pll_a 9 - pll_a_out0 10 - mclk (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) 11 - nvidia,model : The user-visible name of this sound complex. 12 - nvidia,audio-routing : A list of the connections between audio components. [all …]
|
/kernel/linux/linux-5.10/sound/soc/tegra/ |
D | tegra_rt5640.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * tegra_rt5640.c - Tegra machine ASoC driver for boards using RT5640 codec. 9 * Copyright (C) 2010-2012 - NVIDIA, Inc. 31 #define DRV_NAME "tegra-snd-rt5640" 44 struct snd_soc_card *card = rtd->card; in tegra_rt5640_asoc_hw_params() 52 err = tegra_asoc_utils_set_rate(&machine->util_data, srate, mclk); in tegra_rt5640_asoc_hw_params() 54 dev_err(card->dev, "Can't configure clocks\n"); in tegra_rt5640_asoc_hw_params() 61 dev_err(card->dev, "codec_dai clock not set\n"); in tegra_rt5640_asoc_hw_params() 100 struct tegra_rt5640 *machine = snd_soc_card_get_drvdata(rtd->card); in tegra_rt5640_asoc_init() 102 snd_soc_card_jack_new(rtd->card, "Headphones", SND_JACK_HEADPHONE, in tegra_rt5640_asoc_init() [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/mfd/ |
D | cirrus,lochnagar.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - patches@opensource.cirrus.com 14 Smart CODEC and Amp devices. It allows the connection of most Cirrus 15 Logic devices on mini-cards, as well as allowing connection of 25 [2] include/dt-bindings/pinctrl/lochnagar.h 26 [3] include/dt-bindings/clock/lochnagar.h 28 And these documents for the required sub-node binding details: 35 - if: [all …]
|