/openbmc/linux/sound/soc/intel/avs/boards/ |
H A D | ssm4567.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // Copyright(c) 2021-2022 Intel Corporation. All rights reserved. 15 #include <sound/soc-acpi.h> 16 #include "../../../codecs/nau8825.h" 18 #define SKL_SSM_CODEC_DAI "ssm4567-hifi" 22 .dlc = COMP_CODEC_CONF("i2c-INT343B:00"), 26 .dlc = COMP_CODEC_CONF("i2c-INT343B:01"), 32 SOC_DAPM_PIN_SWITCH("Left Speaker"), 33 SOC_DAPM_PIN_SWITCH("Right Speaker"), 37 SND_SOC_DAPM_SPK("Left Speaker", NULL), [all …]
|
H A D | es8336.c | 1 // SPDX-License-Identifier: GPL-2.0-only 20 #include <sound/soc-acpi.h> 21 #include <asm/intel-family.h> 33 { "speaker-enable-gpios", &enable_gpio, 1, ACPI_GPIO_QUIRK_ONLY_GPIOIO }, 40 struct snd_soc_card *card = w->dapm->card; in avs_es8336_speaker_power_event() 48 gpiod_set_value_cansleep(data->gpiod, speaker_en); in avs_es8336_speaker_power_event() 53 SND_SOC_DAPM_SPK("Speaker", NULL), 58 SND_SOC_DAPM_SUPPLY("Speaker Power", SND_SOC_NOPM, 0, 0, 68 * There is no separate speaker output instead the speakers are muxed to 69 * the HP outputs. The mux is controlled by the "Speaker Power" widget. [all …]
|
H A D | rt286.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // Copyright(c) 2021-2022 Intel Corporation. All rights reserved. 14 #include <sound/soc-acpi.h> 15 #include "../../../codecs/rt286.h" 17 #define RT286_CODEC_DAI "rt286-aif1" 22 SOC_DAPM_PIN_SWITCH("Speaker"), 28 SND_SOC_DAPM_SPK("Speaker", NULL), 32 /* HP jack connectors - unknown if we have jack detect */ 36 {"Speaker", NULL, "SPOR"}, 37 {"Speaker", NULL, "SPOL"}, [all …]
|
H A D | rt298.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // Copyright(c) 2021-2022 Intel Corporation. All rights reserved. 15 #include <sound/soc-acpi.h> 16 #include "../../../codecs/rt298.h" 18 #define RT298_CODEC_DAI "rt298-aif1" 33 SOC_DAPM_PIN_SWITCH("Speaker"), 39 SND_SOC_DAPM_SPK("Speaker", NULL), 43 /* HP jack connectors - unknown if we have jack detect */ 47 {"Speaker", NULL, "SPOR"}, 48 {"Speaker", NULL, "SPOL"}, [all …]
|
/openbmc/linux/Documentation/sound/hd-audio/ |
H A D | controls.rst | 2 HD-Audio Codec-Specific Mixer Controls 6 This file explains the codec-specific mixer controls. 8 Realtek codecs 9 -------------- 12 This is an enum control to change the surround-channel setup, 16 jack-retasking of multi-I/O jacks. 18 Auto-Mute Mode 19 This is an enum control to change the auto-mute behavior of the 20 headphone and line-out jacks. If built-in speakers and headphone 21 and/or line-out jacks are available on a machine, this controls [all …]
|
H A D | models.rst | 2 HD-Audio Codec-Specific Models 8 3-jack in back and a headphone out 9 3stack-digout 10 3-jack in back, a HP out and a SPDIF out 12 5-jack in back, 2-jack in front 13 5stack-digout 14 5-jack in back, 2-jack in front, a SPDIF out 16 6-jack in back, 2-jack in front 17 6stack-digout 18 6-jack with a SPDIF out [all …]
|
H A D | realtek-pc-beep.rst | 6 Realtek HDA codecs and controls a muxer and pair of passthrough mixers that can 9 for codecs that don't have mixer widgets in their output paths. Why it's easier 20 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 24 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 48 into 14h (internal speaker on my machine). Mixed signal **ignores** the mute 58 +--DIV--+--!DIV--+ {1Ah boost control} 60 +--(b == 0)--+--(b != 0)--+ 70 +-----!h-----+-----S-----+ 74 >21h (Headphone)< >14h (Internal Speaker)< 79 All Realtek HDA codecs have a vendor-defined widget with node ID 20h which [all …]
|
/openbmc/linux/sound/soc/intel/boards/ |
H A D | sof_realtek_common.c | 1 // SPDX-License-Identifier: GPL-2.0-only 10 #include <sound/soc-acpi.h> 11 #include <sound/soc-dai.h> 12 #include <sound/soc-dapm.h> 15 #include "../../codecs/rt1011.h" 16 #include "../../codecs/rt1015.h" 17 #include "../../codecs/rt1308.h" 21 * Current only 2-amp configuration is supported for rt1011 24 /* speaker */ 82 dev_err(codec_dai->dev, "fail to set pll, ret %d\n", in rt1011_hw_params() [all …]
|
H A D | sof_sdw_rt_amp.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * sof_sdw_rt_amp - Helpers to handle RT1308/RT1316/RT1318 from generic machine driver 12 #include <sound/soc-acpi.h> 13 #include <sound/soc-dapm.h> 19 #include "../../codecs/rt1308.h" 117 pdata = dmi_data->driver_data; in rt_amp_add_device_props() 118 memcpy(¶ms, pdata->bq_params, sizeof(unsigned char) * pdata->bq_params_cnt); in rt_amp_add_device_props() 120 props[0] = PROPERTY_ENTRY_U8_ARRAY("realtek,bq-params", params); in rt_amp_add_device_props() 121 props[1] = PROPERTY_ENTRY_U32("realtek,bq-params-cnt", pdata->bq_params_cnt); in rt_amp_add_device_props() 135 SOC_DAPM_PIN_SWITCH("Speaker"), [all …]
|
H A D | sof_es8336.c | 1 // SPDX-License-Identifier: GPL-2.0-only 21 #include <sound/soc-acpi.h> 24 /* jd-inv + terminating entry */ 56 static int quirk_override = -1; 58 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 79 { "speakers-enable-gpios", &enable_gpio0, 1, ACPI_GPIO_QUIRK_ONLY_GPIOIO }, 84 { "speakers-enable-gpios", &enable_gpio1, 1, ACPI_GPIO_QUIRK_ONLY_GPIOIO }, 88 { "speakers-enable-gpios", &enable_gpio0, 1, ACPI_GPIO_QUIRK_ONLY_GPIOIO }, 89 { "headphone-enable-gpios", &enable_gpio1, 1, ACPI_GPIO_QUIRK_ONLY_GPIOIO }, 94 { "speakers-enable-gpios", &enable_gpio1, 1, ACPI_GPIO_QUIRK_ONLY_GPIOIO }, [all …]
|
H A D | sof_maxim_common.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <sound/soc-acpi.h> 10 #include <sound/soc-dai.h> 11 #include <sound/soc-dapm.h> 21 for_each_acpi_dev_match(adev, hid, NULL, -1) in get_num_codecs() 30 /* speaker */ 67 if (!strcmp(codec_dai->component->name, MAX_98373_DEV0_NAME)) { in max_98373_hw_params() 71 if (!strcmp(codec_dai->component->name, MAX_98373_DEV1_NAME)) { in max_98373_hw_params() 88 if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) in max_98373_trigger() 94 snd_soc_component_get_dapm(cpu_dai->component); in max_98373_trigger() [all …]
|
H A D | sof_nau8825.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 * and speaker codec RT1019P MAX98360a or MAX98373 20 #include <sound/soc-acpi.h> 21 #include "../../codecs/nau8825.h" 22 #include "../common/soc-intel-quirks.h" 69 struct sof_card_private *ctx = snd_soc_card_get_drvdata(rtd->card); in sof_hdmi_init() 73 pcm = devm_kzalloc(rtd->card->dev, sizeof(*pcm), GFP_KERNEL); in sof_hdmi_init() 75 return -ENOMEM; in sof_hdmi_init() 78 pcm->device = rtd->dai_link->id; in sof_hdmi_init() 79 pcm->codec_dai = dai; in sof_hdmi_init() [all …]
|
H A D | sof_cirrus_common.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Driver for Intel platforms with Cirrus Logic Codecs. 10 #include "../../codecs/cs35l41.h" 34 /* speaker */ 44 * Mapping between ACPI instance id and speaker position. 50 struct snd_soc_card *card = rtd->card; in cs35l41_init() 53 ret = snd_soc_dapm_new_controls(&card->dapm, cs35l41_dapm_widgets, in cs35l41_init() 56 dev_err(rtd->dev, "fail to add dapm controls, ret %d\n", ret); in cs35l41_init() 63 dev_err(rtd->dev, "fail to add card controls, ret %d\n", ret); in cs35l41_init() 67 ret = snd_soc_dapm_add_routes(&card->dapm, cs35l41_dapm_routes, in cs35l41_init() [all …]
|
/openbmc/linux/sound/soc/mediatek/mt8173/ |
H A D | mt8173-rt5650-rt5676.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650-rt5676.c -- MT8173 machine driver with RT5650/5676 codecs 14 #include "../../codecs/rt5645.h" 15 #include "../../codecs/rt5677.h" 20 SND_SOC_DAPM_SPK("Speaker", NULL), 27 {"Speaker", NULL, "SPOL"}, 28 {"Speaker", NULL, "SPOR"}, 29 {"Speaker", NULL, "Sub AIF2TX"}, /* IF2 ADC to 5650 */ 41 SOC_DAPM_PIN_SWITCH("Speaker"), 90 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5676_init() [all …]
|
H A D | mt8173-rt5650-rt5514.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-rt5650-rt5514.c -- MT8173 machine driver with RT5650/5514 codecs 14 #include "../../codecs/rt5645.h" 19 SND_SOC_DAPM_SPK("Speaker", NULL), 26 {"Speaker", NULL, "SPOL"}, 27 {"Speaker", NULL, "SPOR"}, 37 SOC_DAPM_PIN_SWITCH("Speaker"), 86 struct snd_soc_card *card = runtime->card; in mt8173_rt5650_rt5514_init() 87 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_rt5650_rt5514_init() 104 dev_err(card->dev, "Can't new Headset Jack %d\n", ret); in mt8173_rt5650_rt5514_init() [all …]
|
H A D | mt8173-max98090.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * mt8173-max98090.c -- MT8173 MAX98090 ALSA SoC machine driver 13 #include "../../codecs/max98090.h" 29 SND_SOC_DAPM_SPK("Speaker", NULL), 36 {"Speaker", NULL, "SPKL"}, 37 {"Speaker", NULL, "SPKR"}, 46 SOC_DAPM_PIN_SWITCH("Speaker"), 69 struct snd_soc_card *card = runtime->card; in mt8173_max98090_init() 70 struct snd_soc_component *component = asoc_rtd_to_codec(runtime, 0)->component; in mt8173_max98090_init() 78 dev_err(card->dev, "Can't create a new Jack %d\n", ret); in mt8173_max98090_init() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/sound/ |
H A D | mt8192-mt6359-rt1015-rt5682.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/mt8192-mt6359-rt1015-rt5682.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jiaxin Yu <jiaxin.yu@mediatek.com> 11 - Shane Chien <shane.chien@mediatek.com> 19 - mediatek,mt8192_mt6359_rt1015_rt5682 20 - mediatek,mt8192_mt6359_rt1015p_rt5682 21 - mediatek,mt8192_mt6359_rt1015p_rt5682s 27 mediatek,hdmi-codec: [all …]
|
H A D | mt8186-mt6366-da7219-max98357.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/mt8186-mt6366-da7219-max98357.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jiaxin Yu <jiaxin.yu@mediatek.com> 18 - mediatek,mt8186-mt6366-da7219-max98357-sound 24 headset-codec: 28 sound-dai: 31 - sound-dai 33 playback-codecs: [all …]
|
H A D | mt8186-mt6366-rt1019-rt5682s.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/mt8186-mt6366-rt1019-rt5682s.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jiaxin Yu <jiaxin.yu@mediatek.com> 18 - mediatek,mt8186-mt6366-rt1019-rt5682s-sound 19 - mediatek,mt8186-mt6366-rt5682s-max98360-sound 25 dmic-gpios: 28 dmic-gpios optional prop for switching between two DMICs. 32 headset-codec: [all …]
|
H A D | cirrus,madera.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Cirrus Logic Madera class audio CODECs 10 - patches@opensource.cirrus.com 13 This describes audio configuration bindings for these codecs. 21 include/dt-bindings/sound/madera.h 26 - $ref: dai-common.yaml# 29 '#sound-dai-cells': 38 INnAR INnBL INnBR. For non-muxed inputs the first two cells [all …]
|
/openbmc/linux/sound/soc/codecs/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 5 # setting - SPI can't be modular so that case doesn't need to be covered. 344 Support for the bus types used to access the codecs to be built must 469 tristate "Analog Devices AU1761 CODEC - I2C" 475 tristate "Analog Devices AU1761 CODEC - SPI" 512 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter" 518 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode" 521 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM 527 will be called snd-soc-adau7118-hw. 530 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C" [all …]
|
/openbmc/linux/sound/soc/samsung/ |
H A D | lowland.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 #include <sound/soc-dapm.h> 13 #include "../codecs/wm5100.h" 14 #include "../codecs/wm9081.h" 39 struct snd_soc_component *component = asoc_rtd_to_codec(rtd, 0)->component; in lowland_wm5100_init() 58 ret = snd_soc_card_jack_new_pins(rtd->card, "Headset", in lowland_wm5100_init() 73 struct snd_soc_component *component = asoc_rtd_to_codec(rtd, 0)->component; in lowland_wm9081_init() 75 snd_soc_dapm_nc_pin(&rtd->card->dapm, "LINEOUT"); in lowland_wm9081_init() 91 DAILINK_COMP_ARRAY(COMP_CPU("samsung-i2s.0")), 92 DAILINK_COMP_ARRAY(COMP_CODEC("wm5100.1-001a", "wm5100-aif1")), [all …]
|
H A D | speyside.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 #include <sound/soc-dapm.h> 13 #include "../codecs/wm8996.h" 14 #include "../codecs/wm9081.h" 27 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[1]); in speyside_set_bias_level() 30 if (dapm->dev != codec_dai->dev) in speyside_set_bias_level() 63 rtd = snd_soc_get_pcm_runtime(card, &card->dai_link[1]); in speyside_set_bias_level_post() 66 if (dapm->dev != codec_dai->dev) in speyside_set_bias_level_post() 71 if (card->dapm.bias_level == SND_SOC_BIAS_STANDBY) { in speyside_set_bias_level_post() 93 card->dapm.bias_level = level; in speyside_set_bias_level_post() [all …]
|
/openbmc/linux/sound/soc/rockchip/ |
H A D | rockchip_max98090.c | 1 // SPDX-License-Identifier: GPL-2.0-only 21 #include "../codecs/ts3a227e.h" 23 #define DRV_NAME "rockchip-snd-max98090" 44 SND_SOC_DAPM_SPK("Speaker", NULL) 68 {"Speaker", NULL, "SPKL"}, \ 69 {"Speaker", NULL, "SPKR"} 91 SOC_DAPM_PIN_SWITCH("Speaker") 113 struct snd_soc_dapm_context *dapm = &jack->card->dapm; in rk_jack_event() 169 return -EINVAL; in rk_aif1_hw_params() 175 dev_err(cpu_dai->dev, "Can't set cpu dai clock %d\n", ret); in rk_aif1_hw_params() [all …]
|
/openbmc/linux/Documentation/sound/soc/ |
H A D | dapm.rst | 11 such, can easily co-exist with the other PM systems. 60 Audio DAPM widgets fall into a number of types:- 84 Speaker 85 Speaker 127 (Widgets are defined in include/sound/soc-dapm.h) 130 There are convenience macros defined in soc-dapm.h that can be used to quickly 131 build a list of widgets of the codecs and machines DAPM widgets. 138 --------------------- 144 Stream widgets have the following format:- 167 ------------------- [all …]
|