public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Len Brown <len.brown@intel.com>
To: "Prakash K. Cheemplavam" <PrakashKC@gmx.de>
Cc: Craig Bradney <cbradney@zip.com.au>,
	ross@datscreative.com.au, christian.kroener@tu-harburg.de,
	linux-kernel@vger.kernel.org,
	"Maciej W. Rozycki" <macro@ds2.pg.gda.pl>,
	Jamie Lokier <jamie@shareable.org>,
	Daniel Drake <dan@reactivated.net>, Ian Kumlien <pomac@vapor.com>,
	Jesse Allen <the3dfxdude@hotmail.com>,
	a.verweij@student.tudelft.nl, Allen Martin <AMartin@nvidia.com>
Subject: Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
Date: 21 Apr 2004 18:41:38 -0400	[thread overview]
Message-ID: <1082587298.16336.138.camel@dhcppc4> (raw)
In-Reply-To: <4086E76E.3010608@gmx.de>

[-- Attachment #1: Type: text/plain, Size: 5145 bytes --]

> Please send me the output from dmidecode, available in /usr/sbin/, or
> > here:
> > http://www.nongnu.org/dmidecode/
> > or
> > http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils/

On Wed, 2004-04-21 at 17:28, Prakash K. Cheemplavam wrote:

> this is the output for Abit NF7-S Rev20 using bios d23. I have NOT 
> activated APIC for this. Is it needed?

Yes, you need to enable ACPI and IOAPIC.  The goal of this patch
is to address the XT-PIC timer issue in IOAPIC mode.

Here's the latest (vs 2.6.5).

I've got 1 Abit, 2 Asus, and 1 Shuttle DMI entry.  Let me know if the
product names (1st line of dmidecode entry) are correct,
these are not from DMI, but are supposed to be human-readable titles.

I'm interested only in the latest BIOS -- if it is still broken.
The assumption is that if a fixed BIOS is available, the users
should upgrade.

thanks,
-Len

ps. latest BIOS on my shuttle has a C1 disconnect enable setting,
(curiously, it is disabled by default) so I'll try to reproduce the hang
on it...

===== Documentation/kernel-parameters.txt 1.44 vs edited =====
--- 1.44/Documentation/kernel-parameters.txt	Mon Mar 22 16:03:22 2004
+++ edited/Documentation/kernel-parameters.txt	Wed Apr 21 15:28:12 2004
@@ -122,6 +122,10 @@
 
 	acpi_serialize	[HW,ACPI] force serialization of AML methods
 
+	acpi_skip_timer_override [HW,ACPI]
+			Recognize and ignore IRQ0/pin2 Interrupt Override.
+			For broken nForce2 BIOS resulting in XT-PIC timer.
+
 	ad1816=		[HW,OSS]
 			Format: <io>,<irq>,<dma>,<dma2>
 			See also Documentation/sound/oss/AD1816.
===== arch/i386/kernel/dmi_scan.c 1.57 vs edited =====
--- 1.57/arch/i386/kernel/dmi_scan.c	Fri Apr 16 22:03:06 2004
+++ edited/arch/i386/kernel/dmi_scan.c	Wed Apr 21 18:29:35 2004
@@ -540,6 +540,19 @@
 #endif
 
 /*
+ * early nForce2 reference BIOS shipped with a
+ * bogus ACPI IRQ0 -> pin2 interrupt override -- ignore it
+ */
+static __init int ignore_timer_override(struct dmi_blacklist *d)
+{
+	extern int acpi_skip_timer_override;
+	printk(KERN_NOTICE "%s detected: BIOS IRQ0 pin2 override"
+		" will be ignored\n", d->ident); 	
+
+	acpi_skip_timer_override = 1;
+	return 0;
+}
+/*
  *	Process the DMI blacklists
  */
  
@@ -944,6 +957,37 @@
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_PRODUCT_NAME, "eserver xSeries 440"),
 			NO_MATCH, NO_MATCH }},
+
+/*
+ * Systems with nForce2 BIOS timer override bug
+ * add Albatron KM18G Pro
+ * add DFI NFII 400-AL
+ * add Epox 8RGA+
+ * add Shuttle AN35N
+ */
+	{ ignore_timer_override, "Abit NF7-S v2", {
+			MATCH(DMI_BOARD_VENDOR, "http://www.abit.com.tw/"),
+			MATCH(DMI_BOARD_NAME, "NF7-S/NF7,NF7-V (nVidia-nForce2)"),
+			MATCH(DMI_BIOS_VERSION, "6.00 PG"),
+			MATCH(DMI_BIOS_DATE, "03/24/2004") }},
+
+	{ ignore_timer_override, "Asus A7N8X v2", {
+			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
+			MATCH(DMI_BOARD_NAME, "A7N8X2.0"),
+			MATCH(DMI_BIOS_VERSION, "ASUS A7N8X2.0 Deluxe ACPI BIOS Rev 1007"),
+			MATCH(DMI_BIOS_DATE, "10/06/2003") }},
+
+	{ ignore_timer_override, "Asus A7N8X-X", {
+			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
+			MATCH(DMI_BOARD_NAME, "A7N8X-X"),
+			MATCH(DMI_BIOS_VERSION, "ASUS A7N8X-X ACPI BIOS Rev 1007"),
+			MATCH(DMI_BIOS_DATE, "10/07/2003") }},
+
+	{ ignore_timer_override, "Shuttle SN41G2", {
+			MATCH(DMI_BOARD_VENDOR, "Shuttle Inc"),
+			MATCH(DMI_BOARD_NAME, "FN41"),
+			MATCH(DMI_BIOS_VERSION, "6.00 PG"),
+			MATCH(DMI_BIOS_DATE, "01/14/2004") }},
 #endif	// CONFIG_ACPI_BOOT
 
 #ifdef	CONFIG_ACPI_PCI
===== arch/i386/kernel/setup.c 1.115 vs edited =====
--- 1.115/arch/i386/kernel/setup.c	Fri Apr  2 07:21:43 2004
+++ edited/arch/i386/kernel/setup.c	Wed Apr 21 15:28:12 2004
@@ -614,6 +614,9 @@
 		else if (!memcmp(from, "acpi_sci=low", 12))
 			acpi_sci_flags.polarity = 3;
 
+		else if (!memcmp(from, "acpi_skip_timer_override", 24))
+			acpi_skip_timer_override = 1;
+
 #ifdef CONFIG_X86_LOCAL_APIC
 		/* disable IO-APIC */
 		else if (!memcmp(from, "noapic", 6))
===== arch/i386/kernel/acpi/boot.c 1.58 vs edited =====
--- 1.58/arch/i386/kernel/acpi/boot.c	Tue Apr 20 20:54:03 2004
+++ edited/arch/i386/kernel/acpi/boot.c	Wed Apr 21 15:28:13 2004
@@ -62,6 +62,7 @@
 
 acpi_interrupt_flags acpi_sci_flags __initdata;
 int acpi_sci_override_gsi __initdata;
+int acpi_skip_timer_override __initdata;
 
 #ifdef CONFIG_X86_LOCAL_APIC
 static u64 acpi_lapic_addr __initdata = APIC_DEFAULT_PHYS_BASE;
@@ -327,6 +328,12 @@
 		acpi_sci_ioapic_setup(intsrc->global_irq,
 			intsrc->flags.polarity, intsrc->flags.trigger);
 		return 0;
+	}
+
+	if (acpi_skip_timer_override &&
+		intsrc->bus_irq == 0 && intsrc->global_irq == 2) {
+			printk(PREFIX "BIOS IRQ0 pin2 override ignored.\n");
+			return 0;
 	}
 
 	mp_override_legacy_irq (
===== include/asm-i386/acpi.h 1.18 vs edited =====
--- 1.18/include/asm-i386/acpi.h	Tue Mar 30 17:05:19 2004
+++ edited/include/asm-i386/acpi.h	Wed Apr 21 15:28:14 2004
@@ -118,6 +118,7 @@
 #ifdef CONFIG_X86_IO_APIC
 extern int skip_ioapic_setup;
 extern int acpi_irq_to_vector(u32 irq);	/* deprecated in favor of
acpi_gsi_to_irq */
+extern int acpi_skip_timer_override;
 
 static inline void disable_ioapic_setup(void)
 {



[-- Attachment #2: wip.patch --]
[-- Type: text/plain, Size: 4121 bytes --]

===== Documentation/kernel-parameters.txt 1.44 vs edited =====
--- 1.44/Documentation/kernel-parameters.txt	Mon Mar 22 16:03:22 2004
+++ edited/Documentation/kernel-parameters.txt	Wed Apr 21 15:28:12 2004
@@ -122,6 +122,10 @@
 
 	acpi_serialize	[HW,ACPI] force serialization of AML methods
 
+	acpi_skip_timer_override [HW,ACPI]
+			Recognize and ignore IRQ0/pin2 Interrupt Override.
+			For broken nForce2 BIOS resulting in XT-PIC timer.
+
 	ad1816=		[HW,OSS]
 			Format: <io>,<irq>,<dma>,<dma2>
 			See also Documentation/sound/oss/AD1816.
===== arch/i386/kernel/dmi_scan.c 1.57 vs edited =====
--- 1.57/arch/i386/kernel/dmi_scan.c	Fri Apr 16 22:03:06 2004
+++ edited/arch/i386/kernel/dmi_scan.c	Wed Apr 21 18:29:35 2004
@@ -540,6 +540,19 @@
 #endif
 
 /*
+ * early nForce2 reference BIOS shipped with a
+ * bogus ACPI IRQ0 -> pin2 interrupt override -- ignore it
+ */
+static __init int ignore_timer_override(struct dmi_blacklist *d)
+{
+	extern int acpi_skip_timer_override;
+	printk(KERN_NOTICE "%s detected: BIOS IRQ0 pin2 override"
+		" will be ignored\n", d->ident); 	
+
+	acpi_skip_timer_override = 1;
+	return 0;
+}
+/*
  *	Process the DMI blacklists
  */
  
@@ -944,6 +957,37 @@
 			MATCH(DMI_BOARD_VENDOR, "IBM"),
 			MATCH(DMI_PRODUCT_NAME, "eserver xSeries 440"),
 			NO_MATCH, NO_MATCH }},
+
+/*
+ * Systems with nForce2 BIOS timer override bug
+ * add Albatron KM18G Pro
+ * add DFI NFII 400-AL
+ * add Epox 8RGA+
+ * add Shuttle AN35N
+ */
+	{ ignore_timer_override, "Abit NF7-S v2", {
+			MATCH(DMI_BOARD_VENDOR, "http://www.abit.com.tw/"),
+			MATCH(DMI_BOARD_NAME, "NF7-S/NF7,NF7-V (nVidia-nForce2)"),
+			MATCH(DMI_BIOS_VERSION, "6.00 PG"),
+			MATCH(DMI_BIOS_DATE, "03/24/2004") }},
+
+	{ ignore_timer_override, "Asus A7N8X v2", {
+			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
+			MATCH(DMI_BOARD_NAME, "A7N8X2.0"),
+			MATCH(DMI_BIOS_VERSION, "ASUS A7N8X2.0 Deluxe ACPI BIOS Rev 1007"),
+			MATCH(DMI_BIOS_DATE, "10/06/2003") }},
+
+	{ ignore_timer_override, "Asus A7N8X-X", {
+			MATCH(DMI_BOARD_VENDOR, "ASUSTeK Computer INC."),
+			MATCH(DMI_BOARD_NAME, "A7N8X-X"),
+			MATCH(DMI_BIOS_VERSION, "ASUS A7N8X-X ACPI BIOS Rev 1007"),
+			MATCH(DMI_BIOS_DATE, "10/07/2003") }},
+
+	{ ignore_timer_override, "Shuttle SN41G2", {
+			MATCH(DMI_BOARD_VENDOR, "Shuttle Inc"),
+			MATCH(DMI_BOARD_NAME, "FN41"),
+			MATCH(DMI_BIOS_VERSION, "6.00 PG"),
+			MATCH(DMI_BIOS_DATE, "01/14/2004") }},
 #endif	// CONFIG_ACPI_BOOT
 
 #ifdef	CONFIG_ACPI_PCI
===== arch/i386/kernel/setup.c 1.115 vs edited =====
--- 1.115/arch/i386/kernel/setup.c	Fri Apr  2 07:21:43 2004
+++ edited/arch/i386/kernel/setup.c	Wed Apr 21 15:28:12 2004
@@ -614,6 +614,9 @@
 		else if (!memcmp(from, "acpi_sci=low", 12))
 			acpi_sci_flags.polarity = 3;
 
+		else if (!memcmp(from, "acpi_skip_timer_override", 24))
+			acpi_skip_timer_override = 1;
+
 #ifdef CONFIG_X86_LOCAL_APIC
 		/* disable IO-APIC */
 		else if (!memcmp(from, "noapic", 6))
===== arch/i386/kernel/acpi/boot.c 1.58 vs edited =====
--- 1.58/arch/i386/kernel/acpi/boot.c	Tue Apr 20 20:54:03 2004
+++ edited/arch/i386/kernel/acpi/boot.c	Wed Apr 21 15:28:13 2004
@@ -62,6 +62,7 @@
 
 acpi_interrupt_flags acpi_sci_flags __initdata;
 int acpi_sci_override_gsi __initdata;
+int acpi_skip_timer_override __initdata;
 
 #ifdef CONFIG_X86_LOCAL_APIC
 static u64 acpi_lapic_addr __initdata = APIC_DEFAULT_PHYS_BASE;
@@ -327,6 +328,12 @@
 		acpi_sci_ioapic_setup(intsrc->global_irq,
 			intsrc->flags.polarity, intsrc->flags.trigger);
 		return 0;
+	}
+
+	if (acpi_skip_timer_override &&
+		intsrc->bus_irq == 0 && intsrc->global_irq == 2) {
+			printk(PREFIX "BIOS IRQ0 pin2 override ignored.\n");
+			return 0;
 	}
 
 	mp_override_legacy_irq (
===== include/asm-i386/acpi.h 1.18 vs edited =====
--- 1.18/include/asm-i386/acpi.h	Tue Mar 30 17:05:19 2004
+++ edited/include/asm-i386/acpi.h	Wed Apr 21 15:28:14 2004
@@ -118,6 +118,7 @@
 #ifdef CONFIG_X86_IO_APIC
 extern int skip_ioapic_setup;
 extern int acpi_irq_to_vector(u32 irq);	/* deprecated in favor of acpi_gsi_to_irq */
+extern int acpi_skip_timer_override;
 
 static inline void disable_ioapic_setup(void)
 {

  reply	other threads:[~2004-04-21 22:45 UTC|newest]

Thread overview: 93+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-13  1:17 IO-APIC on nforce2 Ross Dickson
2004-04-13  4:01 ` really bensoo_at_soo_dot_com
2004-04-13  4:55   ` Ross Dickson
2004-04-13 17:22     ` Christian Kröner
2004-04-13 21:18     ` really bensoo_at_soo_dot_com
2004-04-14  4:24       ` really bensoo_at_soo_dot_com
2004-04-13  5:08 ` Len Brown
2004-04-13  7:03   ` Ross Dickson
2004-04-13 13:46     ` Maciej W. Rozycki
2004-04-14  1:02     ` IO-APIC on nforce2 [PATCH] Len Brown
2004-04-14  5:02       ` Ross Dickson
2004-04-14  6:30         ` Jamie Lokier
2004-04-14 10:37         ` Maciej W. Rozycki
2004-04-15 19:28           ` Len Brown
2004-04-14 19:57         ` Christian Kröner
2004-04-15  0:17           ` Len Brown
2004-04-15  1:48             ` Ross Dickson
2004-04-15 17:09               ` Christian Kröner
2004-04-15 15:10       ` IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5 Ross Dickson
2004-04-15 20:17         ` Len Brown
2004-04-15 21:04           ` Craig Bradney
2004-04-21 20:22             ` Len Brown
2004-04-21 20:33               ` Ian Kumlien
2004-04-21 20:45               ` Craig Bradney
2004-04-21 21:28               ` Prakash K. Cheemplavam
2004-04-21 22:41                 ` Len Brown [this message]
2004-04-22  7:26                   ` Prakash K. Cheemplavam
2004-04-22 14:58                     ` Len Brown
2004-04-22  8:45                   ` Craig Bradney
2004-04-22 15:03                     ` Len Brown
2004-04-22 20:50                       ` Craig Bradney
2004-04-22  8:50                   ` Arjen Verweij
2004-04-22 16:39                   ` Jesse Allen
2004-04-22 17:21                     ` Len Brown
2004-04-22 21:29                       ` Len Brown
2004-04-23  8:48                         ` Prakash K. Cheemplavam
2004-04-23  9:01                           ` Arjen Verweij
2004-04-23  9:08                             ` Prakash K. Cheemplavam
2004-04-23  9:11                             ` Prakash K. Cheemplavam
2004-04-23 12:18                         ` Maciej W. Rozycki
2004-04-27  7:57                         ` ACPI broken on nforce2? Prakash K. Cheemplavam
2004-04-26 11:41                       ` IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5 Ross Dickson
2004-04-27 17:02                         ` Arjen Verweij
2004-04-27 17:35                           ` Ian Kumlien
2004-04-27 18:00                           ` Len Brown
2004-04-27 18:24                             ` Arjen Verweij
2004-04-27 18:51                             ` Jussi Laako
2004-04-28 11:33                             ` Ross Dickson
2004-04-28 20:59                               ` Jesse Allen
2004-04-29 11:44                                 ` Ross Dickson
2004-04-29 11:54                                   ` Maciej W. Rozycki
2004-04-29 12:00                                     ` Jamie Lokier
2004-04-29 12:26                                       ` Maciej W. Rozycki
2004-04-29 11:57                                   ` Jamie Lokier
2004-04-29 12:16                                   ` Craig Bradney
2004-04-29 20:24                                   ` Jesse Allen
2004-04-29 20:31                                     ` Prakash K. Cheemplavam
2004-05-03 20:45                                       ` Jesse Allen
2004-05-17 15:26                                         ` Prakash K. Cheemplavam
2004-05-17 19:32                                           ` Craig Bradney
2004-05-17 19:37                                             ` Prakash K. Cheemplavam
2004-05-17 19:57                                               ` Craig Bradney
2004-04-27 21:31                         ` Prakash K. Cheemplavam
2004-04-28 11:26                           ` Prakash K. Cheemplavam
2004-05-01  6:51                   ` Prakash K. Cheemplavam
2004-04-15 21:56           ` Arjen Verweij
2004-04-15 15:21       ` IO-APIC on nforce2 [PATCH] Zwane Mwaikambo
     [not found] <1KkKQ-2v9-9@gated-at.bofh.it>
     [not found] ` <1Kqdx-6E1-5@gated-at.bofh.it>
     [not found]   ` <1KH4I-3W9-11@gated-at.bofh.it>
     [not found]     ` <1LgOQ-7px-3@gated-at.bofh.it>
     [not found]       ` <1LlEY-36q-11@gated-at.bofh.it>
2004-04-15 23:07         ` IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5 Andi Kleen
2004-04-21 22:00           ` Len Brown
  -- strict thread matches above, loose matches on Subject: below --
2004-04-23  1:30 Jesse Allen
2004-05-07  4:47 ` Richard James
2004-05-07  7:13   ` Craig Bradney
2004-05-08  5:33   ` Richard James
2004-05-03  8:08 Allen Martin
2004-05-03 22:09 Allen Martin
2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
2004-05-04  8:28   ` Prakash K. Cheemplavam
2004-05-04 21:10   ` Jeff Garzik
2004-05-04 21:29     ` Bartlomiej Zolnierkiewicz
2004-05-05 12:14   ` Ross Dickson
2004-05-05 12:27     ` Ian Kumlien
2004-05-05 13:12       ` Ross Dickson
2004-05-05 13:23         ` Ian Kumlien
2004-05-05 12:58     ` Maciej W. Rozycki
2004-05-05 12:48   ` Patrick Dreker
2004-05-05 13:34     ` Patrick Dreker
2004-05-05 11:24 ` Ross Dickson
2004-05-05 12:18   ` Ian Kumlien
2004-05-05 12:52     ` Ross Dickson
2004-05-05 13:08       ` Ian Kumlien
2004-05-06  1:50         ` Jesse Allen
2004-05-04 20:38 Jesse Allen
2004-05-04 21:14 ` Craig Bradney

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=1082587298.16336.138.camel@dhcppc4 \
    --to=len.brown@intel.com \
    --cc=AMartin@nvidia.com \
    --cc=PrakashKC@gmx.de \
    --cc=a.verweij@student.tudelft.nl \
    --cc=cbradney@zip.com.au \
    --cc=christian.kroener@tu-harburg.de \
    --cc=dan@reactivated.net \
    --cc=jamie@shareable.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=macro@ds2.pg.gda.pl \
    --cc=pomac@vapor.com \
    --cc=ross@datscreative.com.au \
    --cc=the3dfxdude@hotmail.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