linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] intel_ips: blacklist HP ProBook laptops
@ 2012-06-25 13:07 Takashi Iwai
  2012-06-25 16:15 ` Jesse Barnes
  2012-06-26 18:39 ` Matthew Garrett
  0 siblings, 2 replies; 3+ messages in thread
From: Takashi Iwai @ 2012-06-25 13:07 UTC (permalink / raw)
  To: Matthew Garrett; +Cc: Jesse Barnes, platform-driver-x86, linux-kernel

intel_ips driver spews the warning message
  "ME failed to update for more than 1s, likely hung"
at each second endlessly on HP ProBook laptops with IronLake.

As this has never worked, better to blacklist the driver for now.

Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 drivers/platform/x86/intel_ips.c |   22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/drivers/platform/x86/intel_ips.c b/drivers/platform/x86/intel_ips.c
index 0ffdb3c..9af4257 100644
--- a/drivers/platform/x86/intel_ips.c
+++ b/drivers/platform/x86/intel_ips.c
@@ -72,6 +72,7 @@
 #include <linux/string.h>
 #include <linux/tick.h>
 #include <linux/timer.h>
+#include <linux/dmi.h>
 #include <drm/i915_drm.h>
 #include <asm/msr.h>
 #include <asm/processor.h>
@@ -1485,6 +1486,24 @@ static DEFINE_PCI_DEVICE_TABLE(ips_id_table) = {
 
 MODULE_DEVICE_TABLE(pci, ips_id_table);
 
+static int ips_blacklist_callback(const struct dmi_system_id *id)
+{
+	pr_info("Blacklisted intel_ips for %s\n", id->ident);
+	return 1;
+}
+
+static const struct dmi_system_id ips_blacklist[] = {
+	{
+		.callback = ips_blacklist_callback,
+		.ident = "HP ProBook",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "HP ProBook"),
+		},
+	},
+	{ }	/* terminating entry */
+};
+
 static int ips_probe(struct pci_dev *dev, const struct pci_device_id *id)
 {
 	u64 platform_info;
@@ -1494,6 +1513,9 @@ static int ips_probe(struct pci_dev *dev, const struct pci_device_id *id)
 	u16 htshi, trc, trc_required_mask;
 	u8 tse;
 
+	if (dmi_check_system(ips_blacklist))
+		return -ENODEV;
+
 	ips = kzalloc(sizeof(struct ips_driver), GFP_KERNEL);
 	if (!ips)
 		return -ENOMEM;
-- 
1.7.10.4


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] intel_ips: blacklist HP ProBook laptops
  2012-06-25 13:07 [PATCH] intel_ips: blacklist HP ProBook laptops Takashi Iwai
@ 2012-06-25 16:15 ` Jesse Barnes
  2012-06-26 18:39 ` Matthew Garrett
  1 sibling, 0 replies; 3+ messages in thread
From: Jesse Barnes @ 2012-06-25 16:15 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: Matthew Garrett, platform-driver-x86, linux-kernel

On Mon, 25 Jun 2012 15:07:17 +0200
Takashi Iwai <tiwai@suse.de> wrote:

> intel_ips driver spews the warning message
>   "ME failed to update for more than 1s, likely hung"
> at each second endlessly on HP ProBook laptops with IronLake.
> 
> As this has never worked, better to blacklist the driver for now.

Sounds like this ME doesn't support the feature.  It would be nice to
have a better way of detecting this, but unless we hear a bunch more
noise like this a one off is fine with me.

Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] intel_ips: blacklist HP ProBook laptops
  2012-06-25 13:07 [PATCH] intel_ips: blacklist HP ProBook laptops Takashi Iwai
  2012-06-25 16:15 ` Jesse Barnes
@ 2012-06-26 18:39 ` Matthew Garrett
  1 sibling, 0 replies; 3+ messages in thread
From: Matthew Garrett @ 2012-06-26 18:39 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: Jesse Barnes, platform-driver-x86, linux-kernel

Applied, thanks.

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-06-26 18:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-25 13:07 [PATCH] intel_ips: blacklist HP ProBook laptops Takashi Iwai
2012-06-25 16:15 ` Jesse Barnes
2012-06-26 18:39 ` Matthew Garrett

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).