summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThorsten Leemhuis <fedora@leemhuis.info>2020-02-06 16:42:04 +0100
committerThorsten Leemhuis <fedora@leemhuis.info>2020-02-06 16:42:04 +0100
commit48d2ea1892fb00405dd817b212cff4e821f6b881 (patch)
treeb6de66d7c93c313dccf057f2ac9cb02f06be829e
parent2a99138f8ae6d1678562ce5fe45c3e2c3c7c5bef (diff)
parent830026294181c96c65634a2bd314bcd34f92805f (diff)
downloadkernel-48d2ea1892fb00405dd817b212cff4e821f6b881.tar.gz
kernel-48d2ea1892fb00405dd817b212cff4e821f6b881.tar.xz
kernel-48d2ea1892fb00405dd817b212cff4e821f6b881.zip
Merge remote-tracking branch 'origin/f31' into f31-user-thl-vanilla-fedora
-rw-r--r--ASoC-topology-fix-soc_tplg_fe_link_create-link-dobj-.patch60
-rw-r--r--alsa-5.5.patch156
-rw-r--r--alsa-5.6.patch73
-rw-r--r--kernel.spec6
4 files changed, 3 insertions, 292 deletions
diff --git a/ASoC-topology-fix-soc_tplg_fe_link_create-link-dobj-.patch b/ASoC-topology-fix-soc_tplg_fe_link_create-link-dobj-.patch
deleted file mode 100644
index f86069ab9..000000000
--- a/ASoC-topology-fix-soc_tplg_fe_link_create-link-dobj-.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 29bc8978342b2d94a65801904c44dc7b0ef88da2 Mon Sep 17 00:00:00 2001
-From: Jaroslav Kysela <perex@perex.cz>
-Date: Wed, 22 Jan 2020 20:07:52 +0100
-Subject: [PATCH] ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj
- initialization order
-
-The code which checks the return value for snd_soc_add_dai_link() call
-in soc_tplg_fe_link_create() moved the snd_soc_add_dai_link() call before
-link->dobj members initialization.
-
-While it does not affect the latest kernels, the old soc-core.c code
-in the stable kernels is affected. The snd_soc_add_dai_link() function uses
-the link->dobj.type member to check, if the link structure is valid.
-
-Reorder the link->dobj initialization to make things work again.
-It's harmless for the recent code (and the structure should be properly
-initialized before other calls anyway).
-
-The problem is in stable linux-5.4.y since version 5.4.11 when the
-upstream commit 76d270364932 was applied.
-
-Fixes: 76d270364932 ("ASoC: topology: Check return value for snd_soc_add_dai_link()")
-Cc: Dragos Tarcatu <dragos_tarcatu@mentor.com>
-Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
-Cc: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
-Cc: Mark Brown <broonie@kernel.org>
-Cc: <stable@vger.kernel.org>
-Signed-off-by: Jaroslav Kysela <perex@perex.cz>
----
- sound/soc/soc-topology.c | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c
-index fd2d22ddc81b..1c143a00633f 100644
---- a/sound/soc/soc-topology.c
-+++ b/sound/soc/soc-topology.c
-@@ -1891,6 +1891,10 @@ static int soc_tplg_fe_link_create(struct soc_tplg *tplg,
- link->num_codecs = 1;
- link->num_platforms = 1;
-
-+ link->dobj.index = tplg->index;
-+ link->dobj.ops = tplg->ops;
-+ link->dobj.type = SND_SOC_DOBJ_DAI_LINK;
-+
- if (strlen(pcm->pcm_name)) {
- link->name = kstrdup(pcm->pcm_name, GFP_KERNEL);
- link->stream_name = kstrdup(pcm->pcm_name, GFP_KERNEL);
-@@ -1927,9 +1931,6 @@ static int soc_tplg_fe_link_create(struct soc_tplg *tplg,
- goto err;
- }
-
-- link->dobj.index = tplg->index;
-- link->dobj.ops = tplg->ops;
-- link->dobj.type = SND_SOC_DOBJ_DAI_LINK;
- list_add(&link->dobj.list, &tplg->comp->dobj_list);
-
- return 0;
---
-2.24.1
-
diff --git a/alsa-5.5.patch b/alsa-5.5.patch
index e2edd3d9e..350d0a186 100644
--- a/alsa-5.5.patch
+++ b/alsa-5.5.patch
@@ -4431,162 +4431,6 @@ index 6b1bd4f428e7..e145cec085b8 100644
2.20.1
-From 669fa4378c36f288936e3bdc52dfba7b245ea9fe Mon Sep 17 00:00:00 2001
-From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
-Date: Tue, 29 Oct 2019 15:40:13 +0200
-Subject: [PATCH 046/130] ASoC: SOF: Intel: add support for snd-hda-codec-hdmi
-
-Add support to implement HDMI/DP audio by using the common
-snd-hda-codec-hdmi driver.
-
-Change of codec driver affects user-space as the two
-drivers expose different mixer controls. A new kernel
-module option "use_common_hdmi" is added to user-space
-to indicate which interface should be used. The default
-driver can be selected via a Kconfig option.
-
-Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
-Reviewed-by: Takashi Iwai <tiwai@suse.de>
-Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
-Link: https://lore.kernel.org/r/20191029134017.18901-6-kai.vehmanen@linux.intel.com
-Signed-off-by: Mark Brown <broonie@kernel.org>
-
-Signed-off-by: Jaroslav Kysela <jkysela@redhat.com>
-(cherry picked from commit 139c7febad1afa221c687f3314560284e482a1f4)
-Bugzilla: 1772498
----
- sound/soc/sof/intel/Kconfig | 10 ++++++++++
- sound/soc/sof/intel/hda-codec.c | 22 ++++++++++++++++++----
- sound/soc/sof/intel/hda.c | 6 ++++++
- sound/soc/sof/intel/hda.h | 6 ++++--
- 4 files changed, 38 insertions(+), 6 deletions(-)
-
-diff --git a/sound/soc/sof/intel/Kconfig b/sound/soc/sof/intel/Kconfig
-index aac8d5deba3d..95a2d1708dd9 100644
---- a/sound/soc/sof/intel/Kconfig
-+++ b/sound/soc/sof/intel/Kconfig
-@@ -299,6 +299,16 @@ config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
- Say Y if you want to enable DMI Link L1
- If unsure, select "N".
-
-+config SND_SOC_SOF_HDA_COMMON_HDMI_CODEC
-+ bool "SOF common HDA HDMI codec driver"
-+ depends on SND_SOC_SOF_HDA_LINK
-+ depends on SND_HDA_CODEC_HDMI
-+ help
-+ This adds support for HDMI audio by using the common HDA
-+ HDMI/DisplayPort codec driver.
-+ Say Y if you want to use the common codec driver with SOF.
-+ If unsure select "Y".
-+
- endif ## SND_SOC_SOF_HDA_COMMON
-
- config SND_SOC_SOF_HDA_LINK_BASELINE
-diff --git a/sound/soc/sof/intel/hda-codec.c b/sound/soc/sof/intel/hda-codec.c
-index 3ca6795a89ba..827f84a0722e 100644
---- a/sound/soc/sof/intel/hda-codec.c
-+++ b/sound/soc/sof/intel/hda-codec.c
-@@ -84,6 +84,8 @@ static int hda_codec_probe(struct snd_sof_dev *sdev, int address)
- {
- #if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC)
- struct hdac_hda_priv *hda_priv;
-+ struct snd_soc_acpi_mach_params *mach_params = NULL;
-+ struct snd_sof_pdata *pdata = sdev->pdata;
- #endif
- struct hda_bus *hbus = sof_to_hbus(sdev);
- struct hdac_device *hdev;
-@@ -113,8 +115,19 @@ static int hda_codec_probe(struct snd_sof_dev *sdev, int address)
- if (ret < 0)
- return ret;
-
-- /* use legacy bus only for HDA codecs, idisp uses ext bus */
-- if ((resp & 0xFFFF0000) != IDISP_VID_INTEL) {
-+ if (pdata->machine)
-+ mach_params = (struct snd_soc_acpi_mach_params *)
-+ &pdata->machine->mach_params;
-+
-+ if ((resp & 0xFFFF0000) == IDISP_VID_INTEL)
-+ hda_priv->need_display_power = true;
-+
-+ /*
-+ * if common HDMI codec driver is not used, codec load
-+ * is skipped here and hdac_hdmi is used instead
-+ */
-+ if ((mach_params && mach_params->common_hdmi_codec_drv) ||
-+ (resp & 0xFFFF0000) != IDISP_VID_INTEL) {
- hdev->type = HDA_DEV_LEGACY;
- hda_codec_load_module(&hda_priv->codec);
- }
-@@ -155,7 +168,8 @@ int hda_codec_probe_bus(struct snd_sof_dev *sdev)
- }
- EXPORT_SYMBOL(hda_codec_probe_bus);
-
--#if IS_ENABLED(CONFIG_SND_SOC_HDAC_HDMI)
-+#if IS_ENABLED(CONFIG_SND_HDA_CODEC_HDMI) || \
-+ IS_ENABLED(CONFIG_SND_SOC_HDAC_HDMI)
-
- void hda_codec_i915_get(struct snd_sof_dev *sdev)
- {
-@@ -204,6 +218,6 @@ int hda_codec_i915_exit(struct snd_sof_dev *sdev)
- }
- EXPORT_SYMBOL(hda_codec_i915_exit);
-
--#endif /* CONFIG_SND_SOC_HDAC_HDMI */
-+#endif
-
- MODULE_LICENSE("Dual BSD/GPL");
-diff --git a/sound/soc/sof/intel/hda.c b/sound/soc/sof/intel/hda.c
-index 103f4273c4d3..7dc0018dc4c3 100644
---- a/sound/soc/sof/intel/hda.c
-+++ b/sound/soc/sof/intel/hda.c
-@@ -53,6 +53,11 @@ MODULE_PARM_DESC(use_msi, "SOF HDA use PCI MSI mode");
- static int hda_dmic_num = -1;
- module_param_named(dmic_num, hda_dmic_num, int, 0444);
- MODULE_PARM_DESC(dmic_num, "SOF HDA DMIC number");
-+
-+static bool hda_codec_use_common_hdmi =
-+ IS_ENABLED(CONFIG_SND_SOC_SOF_HDA_COMMON_HDMI_CODEC);
-+module_param_named(use_common_hdmi, hda_codec_use_common_hdmi, bool, 0444);
-+MODULE_PARM_DESC(use_common_hdmi, "SOF HDA use common HDMI codec driver");
- #endif
-
- static const struct hda_dsp_msg_code hda_dsp_rom_msg[] = {
-@@ -459,6 +464,7 @@ static int hda_init_caps(struct snd_sof_dev *sdev)
- &pdata->machine->mach_params;
- mach_params->codec_mask = bus->codec_mask;
- mach_params->platform = dev_name(sdev->dev);
-+ mach_params->common_hdmi_codec_drv = hda_codec_use_common_hdmi;
- }
-
- /* create codec instances */
-diff --git a/sound/soc/sof/intel/hda.h b/sound/soc/sof/intel/hda.h
-index 8e03d876a0ac..d6ef657b8900 100644
---- a/sound/soc/sof/intel/hda.h
-+++ b/sound/soc/sof/intel/hda.h
-@@ -565,7 +565,9 @@ void hda_codec_jack_check(struct snd_sof_dev *sdev);
-
- #endif /* CONFIG_SND_SOC_SOF_HDA */
-
--#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA) && IS_ENABLED(CONFIG_SND_SOC_HDAC_HDMI)
-+#if IS_ENABLED(CONFIG_SND_SOC_SOF_HDA) && \
-+ (IS_ENABLED(CONFIG_SND_HDA_CODEC_HDMI) || \
-+ IS_ENABLED(CONFIG_SND_SOC_HDAC_HDMI))
-
- void hda_codec_i915_get(struct snd_sof_dev *sdev);
- void hda_codec_i915_put(struct snd_sof_dev *sdev);
-@@ -579,7 +581,7 @@ static inline void hda_codec_i915_put(struct snd_sof_dev *sdev) { }
- static inline int hda_codec_i915_init(struct snd_sof_dev *sdev) { return 0; }
- static inline int hda_codec_i915_exit(struct snd_sof_dev *sdev) { return 0; }
-
--#endif /* CONFIG_SND_SOC_SOF_HDA && CONFIG_SND_SOC_HDAC_HDMI */
-+#endif
-
- /*
- * Trace Control.
---
-2.20.1
-
-
From 480f07ccb82555912594c2b6d560fdeb35176b40 Mon Sep 17 00:00:00 2001
From: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Date: Fri, 1 Nov 2019 12:30:35 -0500
diff --git a/alsa-5.6.patch b/alsa-5.6.patch
index 181525102..b5436a7b2 100644
--- a/alsa-5.6.patch
+++ b/alsa-5.6.patch
@@ -1,76 +1,3 @@
-From 4ef91c45a5a283dc8899402bc68adfe0aa9a026d Mon Sep 17 00:00:00 2001
-From: Jaroslav Kysela <perex@perex.cz>
-Date: Wed, 4 Dec 2019 15:15:44 -0600
-Subject: [PATCH 1/4] ASoC: intel/skl/hda - export number of digital
- microphones via control components
-
-It is required for the auto-detection in the user space (for UCM).
-
-Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
-Cc: Mark Brown <broonie@kernel.org>
-Link: https://lore.kernel.org/r/20191204211556.12671-2-pierre-louis.bossart@linux.intel.com
-Signed-off-by: Mark Brown <broonie@kernel.org>
-
-Signed-off-by: Jaroslav Kysela <jkysela@redhat.com>
-(cherry picked from commit 8cd9956f61c65022209ce6d1e55ed12aea12357d)
-Bugzilla: 1772498
----
- sound/soc/intel/boards/skl_hda_dsp_generic.c | 8 ++++++++
- sound/soc/sof/intel/hda.c | 3 ++-
- 2 files changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/sound/soc/intel/boards/skl_hda_dsp_generic.c b/sound/soc/intel/boards/skl_hda_dsp_generic.c
-index 4e45901e3a2f..11eaee9ae41f 100644
---- a/sound/soc/intel/boards/skl_hda_dsp_generic.c
-+++ b/sound/soc/intel/boards/skl_hda_dsp_generic.c
-@@ -100,6 +100,8 @@ static struct snd_soc_card hda_soc_card = {
- .late_probe = skl_hda_card_late_probe,
- };
-
-+static char hda_soc_components[30];
-+
- #define IDISP_DAI_COUNT 3
- #define HDAC_DAI_COUNT 2
- #define DMIC_DAI_COUNT 2
-@@ -183,6 +185,12 @@ static int skl_hda_audio_probe(struct platform_device *pdev)
- hda_soc_card.dev = &pdev->dev;
- snd_soc_card_set_drvdata(&hda_soc_card, ctx);
-
-+ if (mach->mach_params.dmic_num > 0) {
-+ snprintf(hda_soc_components, sizeof(hda_soc_components),
-+ "cfg-dmics:%d", mach->mach_params.dmic_num);
-+ hda_soc_card.components = hda_soc_components;
-+ }
-+
- return devm_snd_soc_register_card(&pdev->dev, &hda_soc_card);
- }
-
-diff --git a/sound/soc/sof/intel/hda.c b/sound/soc/sof/intel/hda.c
-index 91bd88fddac7..eea01f75d23d 100644
---- a/sound/soc/sof/intel/hda.c
-+++ b/sound/soc/sof/intel/hda.c
-@@ -351,7 +351,7 @@ static int hda_init_caps(struct snd_sof_dev *sdev)
- const char *tplg_filename;
- const char *idisp_str;
- const char *dmic_str;
-- int dmic_num;
-+ int dmic_num = 0;
- int codec_num = 0;
- int i;
- #endif
-@@ -472,6 +472,7 @@ static int hda_init_caps(struct snd_sof_dev *sdev)
- mach_params->codec_mask = bus->codec_mask;
- mach_params->platform = dev_name(sdev->dev);
- mach_params->common_hdmi_codec_drv = hda_codec_use_common_hdmi;
-+ mach_params->dmic_num = dmic_num;
- }
-
- /* create codec instances */
---
-2.20.1
-
-
From 89be5f69889f7e9aeab05279869bba3e9e0d2002 Mon Sep 17 00:00:00 2001
From: Jaroslav Kysela <perex@perex.cz>
Date: Wed, 4 Dec 2019 15:15:45 -0600
diff --git a/kernel.spec b/kernel.spec
index 6a77b0b39..dad0bfa55 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -837,9 +837,6 @@ Patch600: alsa-5.5.patch
# ALSA code from v5.6 (Intel ASoC Sound Open Firmware driver support)
Patch601: alsa-5.6.patch
-# https://bugzilla.redhat.com/show_bug.cgi?id=1772498#c101
-Patch602: ASoC-topology-fix-soc_tplg_fe_link_create-link-dobj-.patch
-
# This is already in 5.5 rhbz 1794369
Patch603: 0001-e1000e-Add-support-for-Comet-Lake.patch
@@ -2543,6 +2540,9 @@ fi
#
#
%changelog
+* Thu Feb 06 2020 Jeremy Cline <jcline@redhat.com> - 5.4.18-200
+- Linux v5.4.18
+
* Sat Feb 01 2020 Jeremy Cline <jcline@redhat.com> - 5.4.17-200
- Linux v5.4.17