From: Hans de Goede <hdegoede@redhat.com>
To: Lee Jones <lee.jones@linaro.org>,
Cezary Rojewski <cezary.rojewski@intel.com>,
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>,
Liam Girdwood <liam.r.girdwood@linux.intel.com>,
Jie Yang <yang.jie@linux.intel.com>,
Mark Brown <broonie@kernel.org>
Cc: alsa-devel@alsa-project.org,
Charles Keepax <ckeepax@opensource.cirrus.com>,
patches@opensource.cirrus.com, linux-kernel@vger.kernel.org,
Hans de Goede <hdegoede@redhat.com>,
Andy Shevchenko <andy.shevchenko@gmail.com>
Subject: [PATCH v4 4/5] ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr()
Date: Wed, 20 Jan 2021 22:49:56 +0100 [thread overview]
Message-ID: <20210120214957.140232-5-hdegoede@redhat.com> (raw)
In-Reply-To: <20210120214957.140232-1-hdegoede@redhat.com>
Some Bay Trail systems:
1. Use a non CR version of the Bay Trail SoC
2. Contain at least 6 interrupt resources so that the
platform_get_resource(pdev, IORESOURCE_IRQ, 5) check to workaround
non CR systems which list their IPC IRQ at index 0 despite being
non CR does not work
3. Despite 1. and 2. still have their IPC IRQ at index 0 rather then 5
Add a DMI quirk table to check for the few known models with this issue,
so that the right IPC IRQ index is used on these systems.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
sound/soc/intel/common/soc-intel-quirks.h | 25 +++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/sound/soc/intel/common/soc-intel-quirks.h b/sound/soc/intel/common/soc-intel-quirks.h
index b07df3059926..a93987ab7f4d 100644
--- a/sound/soc/intel/common/soc-intel-quirks.h
+++ b/sound/soc/intel/common/soc-intel-quirks.h
@@ -11,6 +11,7 @@
#if IS_ENABLED(CONFIG_X86)
+#include <linux/dmi.h>
#include <asm/cpu_device_id.h>
#include <asm/intel-family.h>
#include <asm/iosf_mbi.h>
@@ -38,12 +39,36 @@ SOC_INTEL_IS_CPU(cml, KABYLAKE_L);
static inline bool soc_intel_is_byt_cr(struct platform_device *pdev)
{
+ /*
+ * List of systems which:
+ * 1. Use a non CR version of the Bay Trail SoC
+ * 2. Contain at least 6 interrupt resources so that the
+ * platform_get_resource(pdev, IORESOURCE_IRQ, 5) check below
+ * succeeds
+ * 3. Despite 1. and 2. still have their IPC IRQ at index 0 rather then 5
+ *
+ * This needs to be here so that it can be shared between the SST and
+ * SOF drivers. We rely on the compiler to optimize this out in files
+ * where soc_intel_is_byt_cr is not used.
+ */
+ static const struct dmi_system_id force_bytcr_table[] = {
+ { /* Lenovo Yoga Tablet 2 series */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_FAMILY, "YOGATablet2"),
+ },
+ },
+ {}
+ };
struct device *dev = &pdev->dev;
int status = 0;
if (!soc_intel_is_byt())
return false;
+ if (dmi_check_system(force_bytcr_table))
+ return true;
+
if (iosf_mbi_available()) {
u32 bios_status;
--
2.28.0
next prev parent reply other threads:[~2021-01-20 21:52 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-20 21:49 [PATCH v4 0/5] MFD/ASoC: Add support for Intel Bay Trail boards with WM5102 codec Hans de Goede
2021-01-20 21:49 ` [PATCH v4 1/5] mfd: arizona: Add MODULE_SOFTDEP("pre: arizona_ldo1") Hans de Goede
2021-02-04 13:55 ` Lee Jones
2021-01-20 21:49 ` [PATCH v4 2/5] mfd: arizona: Replace arizona_of_get_type() with device_get_match_data() Hans de Goede
2021-02-04 13:55 ` Lee Jones
2021-01-20 21:49 ` [PATCH v4 3/5] mfd: arizona: Add support for ACPI enumeration of WM5102 connected over SPI Hans de Goede
2021-01-21 10:34 ` Charles Keepax
2021-02-04 13:55 ` Lee Jones
2021-01-20 21:49 ` Hans de Goede [this message]
2021-02-04 13:56 ` [PATCH v4 4/5] ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr() Lee Jones
2021-02-04 14:05 ` Mark Brown
2021-02-04 15:04 ` Lee Jones
2021-02-04 15:11 ` Mark Brown
2021-02-04 15:40 ` Lee Jones
2021-02-04 19:42 ` Mark Brown
2021-02-05 8:34 ` Lee Jones
2021-02-05 21:11 ` Mark Brown
2021-02-08 8:33 ` Lee Jones
2021-02-08 15:24 ` Mark Brown
2021-01-20 21:49 ` [PATCH v4 5/5] ASoC: Intel: bytcr_wm5102: Add machine driver for BYT/WM5102 Hans de Goede
2021-01-21 10:37 ` Charles Keepax
2021-02-04 13:56 ` Lee Jones
2021-02-04 10:25 ` [PATCH v4 0/5] MFD/ASoC: Add support for Intel Bay Trail boards with WM5102 codec Hans de Goede
2021-02-04 10:57 ` Lee Jones
2021-02-04 11:07 ` Hans de Goede
2021-02-04 12:43 ` Mark Brown
2021-02-04 13:18 ` Hans de Goede
2021-02-04 14:04 ` Mark Brown
2021-02-04 13:46 ` Lee Jones
2021-02-04 15:09 ` Mark Brown
2021-02-04 15:21 ` Lee Jones
2021-02-04 16:48 ` Mark Brown
2021-02-08 13:52 ` [GIT PULL] Immutable branch from MFD due for the v5.12 merge window Lee Jones
2021-02-08 18:38 ` (subset) [PATCH v4 0/5] MFD/ASoC: Add support for Intel Bay Trail boards with WM5102 codec Mark Brown
2021-02-08 19:12 ` Hans de Goede
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210120214957.140232-5-hdegoede@redhat.com \
--to=hdegoede@redhat.com \
--cc=alsa-devel@alsa-project.org \
--cc=andy.shevchenko@gmail.com \
--cc=broonie@kernel.org \
--cc=cezary.rojewski@intel.com \
--cc=ckeepax@opensource.cirrus.com \
--cc=lee.jones@linaro.org \
--cc=liam.r.girdwood@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=patches@opensource.cirrus.com \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=yang.jie@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).