mirror of https://gitee.com/openkylin/linux.git
Merge series "Kconfig updates for DMIC and SOF HDMI support" from Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>:
This series provides the following updates to the Intel machine driver
Kconfig:
1. The first patch adds the explicit dependency on GPIOLIB when
SND_SOC_DMIC is selected.
2. SND_SOC_SOF_HDA_AUDIO_CODEC is required for using the legacy
HDA codec driver for HDMI support in SOF. The last 3 three patches
make the required changes to account for this.
changes since v1:
first patch for DMIC was merged already
rebase for HDMI on top of Arnd's RT5682 changes.
Libin Yang (3):
ASoC: intel: add depends on SND_SOC_SOF_HDA_AUDIO_CODEC for common
hdmi
ASoC: sof-sdw: remove CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC condition
ASoC: sof_pcm512x: remove CONFIG_SND_HDA_CODEC_HDMI condition
sound/soc/intel/boards/Kconfig | 20 ++++++++++----------
sound/soc/intel/boards/sof_pcm512x.c | 9 ---------
sound/soc/intel/boards/sof_sdw.c | 8 --------
sound/soc/intel/boards/sof_sdw_hdmi.c | 7 -------
4 files changed, 10 insertions(+), 34 deletions(-)
base-commit: 89d73ccab2
--
2.20.1
This commit is contained in:
commit
6e28a0c3e0
|
@ -411,13 +411,13 @@ config SND_SOC_INTEL_KBL_RT5660_MACH
|
|||
|
||||
endif ## SND_SOC_INTEL_KBL
|
||||
|
||||
if SND_SOC_SOF_GEMINILAKE && SND_SOC_SOF_HDA_LINK
|
||||
if SND_SOC_SOF_GEMINILAKE
|
||||
|
||||
config SND_SOC_INTEL_GLK_DA7219_MAX98357A_MACH
|
||||
tristate "GLK with DA7219 and MAX98357A in I2S Mode"
|
||||
depends on I2C && ACPI && GPIOLIB
|
||||
depends on MFD_INTEL_LPSS || COMPILE_TEST
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
depends on SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
select SND_SOC_INTEL_BXT_DA7219_MAX98357A_COMMON
|
||||
help
|
||||
This adds support for ASoC machine driver for Geminilake platforms
|
||||
|
@ -429,7 +429,7 @@ config SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH
|
|||
tristate "GLK with RT5682 and MAX98357A in I2S Mode"
|
||||
depends on I2C && ACPI && GPIOLIB
|
||||
depends on MFD_INTEL_LPSS || COMPILE_TEST
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
depends on SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
select SND_SOC_RT5682_I2C
|
||||
select SND_SOC_MAX98357A
|
||||
select SND_SOC_DMIC
|
||||
|
@ -440,7 +440,7 @@ config SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH
|
|||
Say Y if you have such a device.
|
||||
If unsure select "N".
|
||||
|
||||
endif ## SND_SOC_SOF_GEMINILAKE && SND_SOC_SOF_HDA_LINK
|
||||
endif ## SND_SOC_SOF_GEMINILAKE
|
||||
|
||||
if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC || SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
|
||||
|
@ -463,9 +463,9 @@ if SND_SOC_SOF_HDA_LINK || SND_SOC_SOF_BAYTRAIL
|
|||
config SND_SOC_INTEL_SOF_RT5682_MACH
|
||||
tristate "SOF with rt5682 codec in I2S Mode"
|
||||
depends on I2C && ACPI && GPIOLIB
|
||||
depends on (SND_SOC_SOF_HDA_LINK && (MFD_INTEL_LPSS || COMPILE_TEST)) ||\
|
||||
depends on ((SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC) &&\
|
||||
(MFD_INTEL_LPSS || COMPILE_TEST)) ||\
|
||||
(SND_SOC_SOF_BAYTRAIL && (X86_INTEL_LPSS || COMPILE_TEST))
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
select SND_SOC_MAX98373
|
||||
select SND_SOC_RT1015
|
||||
select SND_SOC_RT5682_I2C
|
||||
|
@ -509,7 +509,7 @@ config SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH
|
|||
tristate "CML with RT1011 and RT5682 in I2S Mode"
|
||||
depends on I2C && ACPI && GPIOLIB
|
||||
depends on MFD_INTEL_LPSS || COMPILE_TEST
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
depends on SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
select SND_SOC_RT1011
|
||||
select SND_SOC_RT5682_I2C
|
||||
select SND_SOC_DMIC
|
||||
|
@ -528,7 +528,7 @@ config SND_SOC_INTEL_SOF_DA7219_MAX98373_MACH
|
|||
tristate "SOF with DA7219 and MAX98373/MAX98360A in I2S Mode"
|
||||
depends on I2C && ACPI && GPIOLIB
|
||||
depends on MFD_INTEL_LPSS || COMPILE_TEST
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
depends on SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
select SND_SOC_DA7219
|
||||
select SND_SOC_MAX98373
|
||||
select SND_SOC_DMIC
|
||||
|
@ -546,7 +546,7 @@ config SND_SOC_INTEL_EHL_RT5660_MACH
|
|||
tristate "EHL with RT5660 in I2S mode"
|
||||
depends on I2C && ACPI && GPIOLIB
|
||||
depends on MFD_INTEL_LPSS || COMPILE_TEST
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
depends on SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
select SND_SOC_RT5660
|
||||
select SND_SOC_DMIC
|
||||
help
|
||||
|
@ -563,7 +563,7 @@ config SND_SOC_INTEL_SOUNDWIRE_SOF_MACH
|
|||
depends on MFD_INTEL_LPSS || COMPILE_TEST
|
||||
depends on SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES || COMPILE_TEST
|
||||
depends on SOUNDWIRE
|
||||
depends on SND_HDA_CODEC_HDMI
|
||||
depends on SND_HDA_CODEC_HDMI && SND_SOC_SOF_HDA_AUDIO_CODEC
|
||||
select SND_SOC_RT700_SDW
|
||||
select SND_SOC_RT711_SDW
|
||||
select SND_SOC_RT1308_SDW
|
||||
|
|
|
@ -126,7 +126,6 @@ static struct snd_soc_dai_link_component platform_component[] = {
|
|||
}
|
||||
};
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_HDA_CODEC_HDMI)
|
||||
static int sof_card_late_probe(struct snd_soc_card *card)
|
||||
{
|
||||
struct sof_card_private *ctx = snd_soc_card_get_drvdata(card);
|
||||
|
@ -146,12 +145,6 @@ static int sof_card_late_probe(struct snd_soc_card *card)
|
|||
|
||||
return hda_dsp_hdmi_build_controls(card, pcm->codec_dai->component);
|
||||
}
|
||||
#else
|
||||
static int sof_card_late_probe(struct snd_soc_card *card)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
static const struct snd_kcontrol_new sof_controls[] = {
|
||||
SOC_DAPM_PIN_SWITCH("Ext Spk"),
|
||||
|
@ -374,14 +367,12 @@ static int sof_audio_probe(struct platform_device *pdev)
|
|||
sof_pcm512x_quirk = SOF_PCM512X_SSP_CODEC(2);
|
||||
} else {
|
||||
dmic_be_num = 2;
|
||||
#if IS_ENABLED(CONFIG_SND_HDA_CODEC_HDMI)
|
||||
if (mach->mach_params.common_hdmi_codec_drv &&
|
||||
(mach->mach_params.codec_mask & IDISP_CODEC_MASK))
|
||||
ctx->idisp_codec = true;
|
||||
|
||||
/* links are always present in topology */
|
||||
hdmi_num = 3;
|
||||
#endif
|
||||
}
|
||||
|
||||
dmi_check_system(sof_pcm512x_quirk_table);
|
||||
|
|
|
@ -663,9 +663,7 @@ static int sof_card_dai_links_create(struct device *dev,
|
|||
struct snd_soc_card *card)
|
||||
{
|
||||
int ssp_num, sdw_be_num = 0, hdmi_num = 0, dmic_num;
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
|
||||
struct snd_soc_dai_link_component *idisp_components;
|
||||
#endif
|
||||
struct snd_soc_dai_link_component *ssp_components;
|
||||
struct snd_soc_acpi_mach_params *mach_params;
|
||||
const struct snd_soc_acpi_link_adr *adr_link;
|
||||
|
@ -686,10 +684,8 @@ static int sof_card_dai_links_create(struct device *dev,
|
|||
for (i = 0; i < ARRAY_SIZE(codec_info_list); i++)
|
||||
codec_info_list[i].amp_num = 0;
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
|
||||
hdmi_num = sof_sdw_quirk & SOF_SDW_TGL_HDMI ?
|
||||
SOF_TGL_HDMI_COUNT : SOF_PRE_TGL_HDMI_COUNT;
|
||||
#endif
|
||||
|
||||
ssp_mask = SOF_SSP_GET_PORT(sof_sdw_quirk);
|
||||
/*
|
||||
|
@ -849,7 +845,6 @@ static int sof_card_dai_links_create(struct device *dev,
|
|||
INC_ID(be_id, cpu_id, link_id);
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
|
||||
/* HDMI */
|
||||
if (hdmi_num > 0) {
|
||||
idisp_components = devm_kcalloc(dev, hdmi_num,
|
||||
|
@ -886,7 +881,6 @@ static int sof_card_dai_links_create(struct device *dev,
|
|||
sof_sdw_hdmi_init, NULL);
|
||||
INC_ID(be_id, cpu_id, link_id);
|
||||
}
|
||||
#endif
|
||||
|
||||
card->dai_link = links;
|
||||
card->num_links = num_links;
|
||||
|
@ -920,9 +914,7 @@ static int mc_probe(struct platform_device *pdev)
|
|||
|
||||
dmi_check_system(sof_sdw_quirk_table);
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
|
||||
INIT_LIST_HEAD(&ctx->hdmi_pcm_list);
|
||||
#endif
|
||||
|
||||
card->dev = &pdev->dev;
|
||||
|
||||
|
|
|
@ -16,7 +16,6 @@
|
|||
#include "../../codecs/hdac_hdmi.h"
|
||||
#include "hda_dsp_common.h"
|
||||
|
||||
#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
|
||||
static struct snd_soc_jack hdmi[MAX_HDMI_NUM];
|
||||
|
||||
struct hdmi_pcm {
|
||||
|
@ -89,9 +88,3 @@ int sof_sdw_hdmi_card_late_probe(struct snd_soc_card *card)
|
|||
|
||||
return hdac_hdmi_jack_port_init(component, &card->dapm);
|
||||
}
|
||||
#else
|
||||
int sof_sdw_hdmi_card_late_probe(struct snd_soc_card *card)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue