/linux-6.14.4/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 - [email protected] 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 …]
|
/linux-6.14.4/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> 27 #include <sound/soc-dapm.h> 251 if (scodec->clk_bus) { in sun8i_codec_runtime_resume() 252 ret = clk_prepare_enable(scodec->clk_bus); in sun8i_codec_runtime_resume() 259 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume() 261 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume() 274 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend() [all …]
|
/linux-6.14.4/sound/soc/intel/boards/ |
D | bdw_rt286.c | 1 // SPDX-License-Identifier: GPL-2.0-only 15 #include <sound/soc-acpi.h> 57 /* CODEC BE connections */ 58 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 59 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 64 struct snd_soc_component *codec = snd_soc_rtd_to_codec(rtd, 0)->component; in codec_link_init() local 67 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset", SND_JACK_HEADSET | SND_JACK_BTN_0, in codec_link_init() 73 return snd_soc_component_set_jack(codec, &card_headset, NULL); in codec_link_init() 78 struct snd_soc_component *codec = snd_soc_rtd_to_codec(rtd, 0)->component; in codec_link_exit() local 80 snd_soc_component_set_jack(codec, NULL, NULL); in codec_link_exit() [all …]
|
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" 47 #define CHT_RT5645_SSP2_AIF2 BIT(16) /* default is using AIF1 */ 69 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() [all …]
|
D | hsw_rt5640.c | 1 // SPDX-License-Identifier: GPL-2.0-only 14 #include <sound/soc-acpi.h> 27 /* CODEC BE connections */ 28 {"SSP0 CODEC IN", NULL, "AIF1 Capture"}, 29 {"AIF1 Playback", NULL, "SSP0 CODEC OUT"}, 39 rate->min = rate->max = 48000; in codec_link_hw_params_fixup() 40 channels->min = channels->max = 2; in codec_link_hw_params_fixup() 56 dev_err(rtd->dev, "set codec sysclk failed: %d\n", ret); in codec_link_hw_params() 60 /* Set correct codec filter for DAI format and clock config. */ in codec_link_hw_params() 61 snd_soc_component_update_bits(codec_dai->component, 0x83, 0xffff, 0x8000); in codec_link_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" 24 #include "../common/soc-intel-quirks.h" 27 /* The platform clock #3 outputs 19.2Mhz clock to codec as I2S MCLK */ 29 #define CHT_CODEC_DAI "rt5670-aif1" 53 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 54 struct snd_soc_card *card = dapm->card; in platform_clock_control() [all …]
|
D | bytcr_wm5102.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * bytcr_wm5102.c - ASoc Machine driver for Intel Baytrail platforms with a 4 * Wolfson Microelectronics WM5102 codec 8 * Copyright (C) 2014-2020 Intel Corp 27 #include <sound/soc-acpi.h> 29 #include "../atom/sst-atom-controls.h" 51 /* Note these values are pre-shifted for easy use of setting quirks */ 59 static int quirk_override = -1; 61 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 102 struct snd_soc_card *card = w->dapm->card; in byt_wm5102_spkvdd_power_event() [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 convert 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 | 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 */ 93 /* Default: jack-detect on JD1_1, internal mic on in2, headsetmic on in3 */ 97 static int quirk_override = -1; 99 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); [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 | 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 30 #include <sound/soc-acpi.h> 31 #include <dt-bindings/sound/rt5640.h> 33 #include "../atom/sst-atom-controls.h" 34 #include "../common/soc-intel-quirks.h" 36 #define BYT_RT5640_FALLBACK_CODEC_DEV_NAME "i2c-rt5640" 77 #define BYT_RT5640_DIFF_MIC BIT(18) /* default is single-ended */ 78 #define BYT_RT5640_SSP2_AIF2 BIT(19) /* default is using AIF1 */ 98 /* in-diff or dmic-pin + jdsrc + ovcd-th + -sf + jd-inv + terminating entry */ [all …]
|
/linux-6.14.4/sound/soc/sdw_utils/ |
D | soc_sdw_utils.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * soc-sdw-utils.c - common SoundWire machine driver helper functions 65 .dai_name = "rt700-aif1", 83 .dai_name = "rt711-sdca-aif1", 103 .dai_name = "rt711-aif1", 123 .dai_name = "rt712-sdca-aif1", 136 .dai_name = "rt712-sdca-aif2", 149 .dai_name = "rt712-sdca-aif3", 163 .dai_name = "rt712-sdca-dmic-aif1", 177 .dai_name = "rt712-sdca-aif1", [all …]
|
/linux-6.14.4/sound/soc/samsung/ |
D | smdk_wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0+ 11 * SMDKV310: CFG5-1000, CFG7-111111 15 * Configure audio route as :- 19 * $ amixer sset 'DAC1R Mixer AIF1.1' on 20 * $ amixer sset 'DAC1L Mixer AIF1.1' on 72 struct snd_soc_dapm_context *dapm = &rtd->card->dapm; in smdk_wm8994_init_paiftx() 93 SND_SOC_DAILINK_DEFS(aif1, 94 DAILINK_COMP_ARRAY(COMP_CPU("samsung-i2s.0")), 95 DAILINK_COMP_ARRAY(COMP_CODEC("wm8994-codec", "wm8994-aif1")), 96 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 | aries_wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 #include <linux/input-event-codes.h> 98 if (!gpiod_get_value(priv->gpio_headset_detect)) { in headset_det_irq_thread() 101 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() 105 time_left_ms -= 20; in headset_det_irq_thread() 109 ret = regulator_enable(priv->reg_headset_micbias); in headset_det_irq_thread() 113 gpiod_set_value(priv->gpio_earpath_sel, 1); in headset_det_irq_thread() 115 ret = iio_read_channel_processed(priv->adc, &adc); in headset_det_irq_thread() 127 ret = regulator_disable(priv->reg_headset_micbias); in headset_det_irq_thread() 133 gpiod_set_value(priv->gpio_earpath_sel, 0); in headset_det_irq_thread() [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 | tm2_wm5110.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // Copyright (C) 2015 - 2016 Samsung Electronics Co., Ltd. 37 struct snd_soc_component *component = priv->component; in tm2_start_sysclk() 43 priv->sysclk_rate); in tm2_start_sysclk() 45 dev_err(component->dev, "Failed to set FLL1 source: %d\n", ret); in tm2_start_sysclk() 52 priv->sysclk_rate); in tm2_start_sysclk() 54 dev_err(component->dev, "Failed to start FLL1: %d\n", ret); in tm2_start_sysclk() 60 priv->sysclk_rate, in tm2_start_sysclk() 63 dev_err(component->dev, "Failed to set SYSCLK source: %d\n", ret); in tm2_start_sysclk() 73 struct snd_soc_component *component = priv->component; in tm2_stop_sysclk() [all …]
|
/linux-6.14.4/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 …]
|
/linux-6.14.4/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 114 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_init() 115 struct snd_soc_component *component = snd_soc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_init() 116 const char *codec_capture_dai = snd_soc_rtd_to_codec(runtime, 1)->name; in mt8173_rt5650_init() 123 if (!strcmp(codec_capture_dai, "rt5645-aif1")) { in mt8173_rt5650_init() 127 } else if (!strcmp(codec_capture_dai, "rt5645-aif2")) { in mt8173_rt5650_init() 132 dev_warn(card->dev, in mt8173_rt5650_init() 133 "Only one dai codec found in DTS, enabled rt5645 AD filter\n"); in mt8173_rt5650_init() 148 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 84 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5514_init() 85 struct snd_soc_component *component = snd_soc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_rt5514_init() 102 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_rt5514_init() 128 SND_SOC_DAILINK_DEFS(codec, 130 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5645-aif1"), 131 COMP_CODEC(NULL, "rt5514-aif1")), 134 /* Digital audio interface glue - connects codec <---> CPU */ 155 .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 88 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5676_init() 89 struct snd_soc_component *component = snd_soc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_rt5676_init() 90 struct snd_soc_component *component_sub = snd_soc_rtd_to_codec(runtime, 1)->component; in mt8173_rt5650_rt5676_init() 115 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_rt5676_init() 150 SND_SOC_DAILINK_DEFS(codec, 152 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5645-aif1"), 153 COMP_CODEC(NULL, "rt5677-aif1")), 158 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "i2s-hifi")), [all …]
|
/linux-6.14.4/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 | allwinner,sun8i-a33-codec.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/sound/allwinner,sun8i-a33-codec.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Allwinner A33 Codec 10 - Chen-Yu Tsai <[email protected]> 11 - Maxime Ripard <[email protected]> 14 - $ref: dai-common.yaml# 17 "#sound-dai-cells": 22 the ADC/DAC and AIF1 (the CPU DAI), not the other two AIFs/DAIs. [all …]
|
/linux-6.14.4/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 - [email protected] 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 …]
|