All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrey Panin <pazke@donpac.ru>
To: Andrew Morton <akpm@osdl.org>, linux-kernel@vger.kernel.org
Subject: [PATCH 4/6] 2.6.7-mm1, port powernow-k7 driver to new DMI probing
Date: Wed, 23 Jun 2004 16:44:47 +0400	[thread overview]
Message-ID: <10879946874140@donpac.ru> (raw)
In-Reply-To: <10879946822631@donpac.ru>


This patch ports powernow-k7 driver to new DMI probing API.

Signed-off-by: Andrey Panin <pazke@donpac.ru>

 arch/i386/kernel/cpu/cpufreq/powernow-k7.c |   28 +++++++++++++++++++++++++++-
 arch/i386/kernel/dmi_scan.c                |   20 --------------------
 2 files changed, 27 insertions(+), 21 deletions(-)

diff -urpN -X /usr/share/dontdiff linux-2.6.7-mm1.vanilla/arch/i386/kernel/cpu/cpufreq/powernow-k7.c linux-2.6.7-mm1/arch/i386/kernel/cpu/cpufreq/powernow-k7.c
--- linux-2.6.7-mm1.vanilla/arch/i386/kernel/cpu/cpufreq/powernow-k7.c	Sun May 23 22:02:03 2004
+++ linux-2.6.7-mm1/arch/i386/kernel/cpu/cpufreq/powernow-k7.c	Sun May 23 22:47:59 2004
@@ -22,6 +22,7 @@
 #include <linux/cpufreq.h>
 #include <linux/slab.h>
 #include <linux/string.h>
+#include <linux/dmi.h>
 
 #include <asm/msr.h>
 #include <asm/timex.h>
@@ -554,6 +555,31 @@ static unsigned int powernow_get(unsigne
 }
 
 
+static int __init acer_cpufreq_pst(struct dmi_system_id *d)
+{
+	printk(KERN_WARNING "%s laptop with broken PST tables in BIOS detected.\n", d->ident);
+	printk(KERN_WARNING "You need to downgrade to 3A21 (09/09/2002), or try a newer BIOS than 3A71 (01/20/2003)\n");
+	printk(KERN_WARNING "cpufreq scaling has been disabled as a result of this.\n");
+	return 0;
+}
+
+/*
+ * Some Athlon laptops have really fucked PST tables.
+ * A BIOS update is all that can save them.
+ * Mention this, and disable cpufreq.
+ */
+static struct dmi_system_id __initdata powernow_dmi_table[] = {
+	{
+		.callback = acer_cpufreq_pst,
+		.ident = "Acer Aspire",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Insyde Software"),
+			DMI_MATCH(DMI_BIOS_VERSION, "3A71"),
+		},
+	},
+	{ }
+};
+
 static int __init powernow_cpu_init (struct cpufreq_policy *policy)
 {
 	union msr_fidvidstatus fidvidstatus;
@@ -572,7 +598,7 @@ static int __init powernow_cpu_init (str
 	}
 	dprintk(KERN_INFO PFX "FSB: %3d.%03d MHz\n", fsb/1000, fsb%1000);
 
-	if ((dmi_broken & BROKEN_CPUFREQ) || acpi_force) {
+ 	if (dmi_check_system(powernow_dmi_table) || acpi_force) {
 		printk (KERN_INFO PFX "PSB/PST known to be broken.  Trying ACPI instead\n");
 		result = powernow_acpi_init();
 	} else {
diff -urpN -X /usr/share/dontdiff linux-2.6.7-mm1.vanilla/arch/i386/kernel/dmi_scan.c linux-2.6.7-mm1/arch/i386/kernel/dmi_scan.c
--- linux-2.6.7-mm1.vanilla/arch/i386/kernel/dmi_scan.c	Sun May 23 22:43:24 2004
+++ linux-2.6.7-mm1/arch/i386/kernel/dmi_scan.c	Sun May 23 22:48:38 2004
@@ -400,15 +400,6 @@ static __init int broken_ps2_resume(stru
 	return 0;
 }
 
-static __init int acer_cpufreq_pst(struct dmi_blacklist *d)
-{
-	printk(KERN_WARNING "%s laptop with broken PST tables in BIOS detected.\n", d->ident);
-	printk(KERN_WARNING "You need to downgrade to 3A21 (09/09/2002), or try a newer BIOS than 3A71 (01/20/2003)\n");
-	printk(KERN_WARNING "cpufreq scaling has been disabled as a result of this.\n");
-	dmi_broken |= BROKEN_CPUFREQ;
-	return 0;
-}
-
 
 /*
  *	Simple "print if true" callback
@@ -758,17 +749,6 @@ static __initdata struct dmi_blacklist d
 	{ set_apm_ints, "IBM", {	/* Allow interrupts during suspend on IBM laptops */
 			MATCH(DMI_SYS_VENDOR, "IBM"),
 			NO_MATCH, NO_MATCH, NO_MATCH
-			} },
-
-	/*
-	 * Some Athlon laptops have really fucked PST tables.
-	 * A BIOS update is all that can save them.
-	 * Mention this, and disable cpufreq.
-	 */
-	{ acer_cpufreq_pst, "Acer Aspire", {
-			MATCH(DMI_SYS_VENDOR, "Insyde Software"),
-			MATCH(DMI_BIOS_VERSION, "3A71"),
-			NO_MATCH, NO_MATCH,
 			} },
 
 	/*      


  reply	other threads:[~2004-06-23 12:49 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-23 12:44 [PATCH 0/6] 2.6.7-mm1, port Acer laptop irq routing workaround to new DMI probing Andrey Panin
2004-06-23 12:44 ` [PATCH 1/6] 2.6.7-mm1, port PnP BIOS driver " Andrey Panin
2004-06-23 12:44   ` [PATCH 2/6] 2.6.7-mm1, port sonypi " Andrey Panin
2004-06-23 12:44     ` [PATCH 3/6] 2.6.7-mm1, port PIIX4 SMBUS " Andrey Panin
2004-06-23 12:44       ` Andrey Panin [this message]
2004-06-23 12:44         ` [PATCH 5/6] 2.6.7-mm1, remove unused ASUS K7V-RM DMI quirk Andrey Panin
2004-06-23 12:44           ` [PATCH 6/6] 2.6.7-mm1, port APM BIOS driver to new DMI probing Andrey Panin
2004-06-23 14:53           ` [PATCH 5/6] 2.6.7-mm1, remove unused ASUS K7V-RM DMI quirk Jeff Garzik
2004-06-23 16:53             ` Len Brown
2004-06-24 19:57               ` Pavel Machek

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=10879946874140@donpac.ru \
    --to=pazke@donpac.ru \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.