* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-14 1:02 ` IO-APIC on nforce2 [PATCH] Len Brown
@ 2004-04-15 15:10 ` Ross Dickson
2004-04-15 20:17 ` Len Brown
0 siblings, 1 reply; 73+ messages in thread
From: Ross Dickson @ 2004-04-15 15:10 UTC (permalink / raw)
To: Len Brown
Cc: christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Prakash K. Cheemplavam, Craig Bradney, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij
[-- Attachment #1: Type: text/plain, Size: 7087 bytes --]
On Wednesday 14 April 2004 11:02, Len Brown wrote:
> Re: IRQ0 XT-PIC timer issue
>
> Since the hardware is connected to APIC pin0, it is a BIOS bug
> that an ACPI interrupt source override from pin2 to IRQ0 exists.
>
> With this simple 2.6.5 patch you can specify "acpi_skip_timer_override"
> to ignore that bogus BIOS directive. The result is with your
> ACPI-enabled APIC-enabled kernel, you'll get IRQ0 IO-APIC-edge timer.
>
> Probably there is a more clever way to trigger this workaround
> automatcially instead of via boot parameter.
>
> cheers,
> -Len
>
> ===== 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 Tue Apr 13 17:47:11 2004
> @@ -122,6 +122,10 @@
>
> acpi_serialize [HW,ACPI] force serialization of AML methods
>
> + acpi_skip_timer_override [HW,ACPI]]
> + Recognize IRQ0/pin2 Interrupt Source Override
> + and ignore it -- for broken nForce2 BIOS.
> +
> ad1816= [HW,OSS]
> Format: <io>,<irq>,<dma>,<dma2>
> See also Documentation/sound/oss/AD1816.
> ===== 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 Tue Apr 13 17:41:31 2004
> @@ -614,6 +614,12 @@
> else if (!memcmp(from, "acpi_sci=low", 12))
> acpi_sci_flags.polarity = 3;
>
> + else if (!memcmp(from, "acpi_skip_timer_override", 24)) {
> + extern int acpi_skip_timer_override;
> +
> + 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.57 vs edited =====
> --- 1.57/arch/i386/kernel/acpi/boot.c Tue Mar 30 17:05:19 2004
> +++ edited/arch/i386/kernel/acpi/boot.c Tue Apr 13 17:50:14 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 (
>
>
>
Hi Len, I have updated my nforce2 patches for 2.6.5 to work with your patch.
I have tested them only on one nforce2 board Epox 8Rga+ but as little has
changed in core functionality from past releases I think all will be OK....
Hopefully no clock skew. I saw none on my system but thats no guarantee.
I tried your above patch with the timer_ack on as is default in 2.6.5 and
nmi_watchdog=1 failed as expected. I still think Maciej's 8259 ack patch
is more complete solution to the ack issue but this one gets watchdog going for
nforce2. I cannot see anyone using your above patch without an integrated
apic and tsc so I cannot see a problem triggering it off your kern arg.
The second patch is the C1halt update I suggested in another posting.
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/1707.html
Both patches in attached tarball.
Regards
Ross.
Here is my revised patch for use with "acpi_skip_timer_override" to get
nmi_debug=1 working with the above patch from Len Brown.
--- linux-2.6.5/arch/i386/kernel/io_apic.c.orig 2004-04-16 00:20:54.000000000 +1000
+++ linux-2.6.5/arch/i386/kernel/io_apic.c 2004-04-15 20:24:18.000000000 +1000
@@ -2179,10 +2179,13 @@ static inline void check_timer(void)
if (pin1 != -1) {
/*
* Ok, does IRQ0 through the IOAPIC work?
*/
+ extern int acpi_skip_timer_override;
+ if(acpi_skip_timer_override)
+ timer_ack=0;
unmask_IO_APIC_irq(0);
if (timer_irq_works()) {
if (nmi_watchdog == NMI_IO_APIC) {
disable_8259A_irq(0);
setup_nmi();
Here is my revised patch for "idle=C1halt" to prevent nforce2 hard lockups.
Now more robust, better tested with apm config, and without x86 apic config,
and nolapic, noapic, acpi=off. All gave my usual 38C CPU temp when idle and
no hard lockups. Temp measured by leaving machine idle on run level 3 for
several minutes and then reading bios temp on reboot.
--- linux-2.6.5/arch/i386/kernel/process.c.orig 2004-04-04 13:36:10.000000000 +1000
+++ linux-2.6.5/arch/i386/kernel/process.c 2004-04-15 20:41:13.000000000 +1000
@@ -47,10 +47,13 @@
#include <asm/irq.h>
#include <asm/desc.h>
#ifdef CONFIG_MATH_EMULATION
#include <asm/math_emu.h>
#endif
+#if defined(CONFIG_X86_UP_APIC)
+#include <asm/apic.h>
+#endif
#include <linux/irq.h>
#include <linux/err.h>
asmlinkage void ret_from_fork(void) __asm__("ret_from_fork");
@@ -98,10 +101,34 @@ void default_idle(void)
local_irq_enable();
}
}
/*
+ * We use this to avoid nforce2 lockups
+ * Reduces frequency of C1 disconnects
+ */
+static void c1halt_idle(void)
+{
+ if (!hlt_counter && current_cpu_data.hlt_works_ok) {
+ local_irq_disable();
+#if defined(CONFIG_X86_UP_APIC)
+ /* only hlt disconnect if more than 1.6% of apic interval remains */
+ extern int enable_local_apic;
+ if(!need_resched() && (enable_local_apic < 0 ||
+ (apic_read(APIC_TMCCT) > (apic_read(APIC_TMICT)>>6)))) {
+#else
+ /* just adds a little delay to assist in back to back disconnects */
+ if(!need_resched()) {
+#endif
+ ndelay(600); /* helps nforce2 but adds 0.6us hard int latency */
+ safe_halt(); /* nothing better to do until we wake up */
+ } else {
+ local_irq_enable();
+ }
+ }
+}
+/*
* On SMP it's slightly faster (but much more power-consuming!)
* to poll the ->work.need_resched flag instead of waiting for the
* cross-CPU IPI to arrive. Use this option with caution.
*/
static void poll_idle (void)
@@ -135,20 +162,18 @@ static void poll_idle (void)
* The idle thread. There's no useful work to be
* done, so just try to conserve power and have a
* low exit latency (ie sit in a loop waiting for
* somebody to say that they'd like to reschedule)
*/
+static void (*idle)(void);
void cpu_idle (void)
{
/* endless idle loop with no priority at all */
while (1) {
while (!need_resched()) {
- void (*idle)(void) = pm_idle;
-
if (!idle)
- idle = default_idle;
-
+ idle = pm_idle ? pm_idle : default_idle;
irq_stat[smp_processor_id()].idle_timestamp = jiffies;
idle();
}
schedule();
}
@@ -199,16 +224,18 @@ void __init select_idle_routine(const st
static int __init idle_setup (char *str)
{
if (!strncmp(str, "poll", 4)) {
printk("using polling idle threads.\n");
- pm_idle = poll_idle;
+ idle = poll_idle;
} else if (!strncmp(str, "halt", 4)) {
printk("using halt in idle threads.\n");
- pm_idle = default_idle;
+ idle = default_idle;
+ } else if (!strncmp(str, "C1halt", 6)) {
+ printk("using C1 halt disconnect friendly idle threads.\n");
+ idle = c1halt_idle;
}
-
return 1;
}
__setup("idle=", idle_setup);
[-- Attachment #2: nforce2-lockup-patches-rd-2.6.5.tgz --]
[-- Type: application/x-tgz, Size: 1671 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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-15 21:56 ` Arjen Verweij
0 siblings, 2 replies; 73+ messages in thread
From: Len Brown @ 2004-04-15 20:17 UTC (permalink / raw)
To: ross
Cc: christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Prakash K. Cheemplavam, Craig Bradney, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
On Thu, 2004-04-15 at 11:10, Ross Dickson wrote:
> On Wednesday 14 April 2004 11:02, Len Brown wrote:
> > Re: IRQ0 XT-PIC timer issue
> >
> > Since the hardware is connected to APIC pin0, it is a BIOS bug
> > that an ACPI interrupt source override from pin2 to IRQ0 exists.
> >
> > With this simple 2.6.5 patch you can specify "acpi_skip_timer_override"
> > to ignore that bogus BIOS directive. The result is with your
> > ACPI-enabled APIC-enabled kernel, you'll get IRQ0 IO-APIC-edge timer.
> >
> > Probably there is a more clever way to trigger this workaround
> > automatcially instead of via boot parameter.
> Hi Len, I have updated my nforce2 patches for 2.6.5 to work with your patch.
> I have tested them only on one nforce2 board Epox 8Rga+ but as little has
> changed in core functionality from past releases I think all will be OK....
> Hopefully no clock skew. I saw none on my system but thats no guarantee.
While I don't want to get into the business of maintaining
a dmi_scan entry for every system with this issue, I think
it might be a good idea to add a couple of example entries
for high volume systems for which there is no BIOS fix available.
Got any opinions on which system to use as the example?
I'll need the output from dmidecode for them.
> I tried your above patch with the timer_ack on as is default in 2.6.5 and
> nmi_watchdog=1 failed as expected. I still think Maciej's 8259 ack patch
> is more complete solution to the ack issue but this one gets watchdog going for
> nforce2. I cannot see anyone using your above patch without an integrated
> apic and tsc so I cannot see a problem triggering it off your kern arg.
"acpi_skip_timer_override" is specific to IOAPIC mode,
since that is the only place that the bogus interrupt
source override is used.
I'm not clued-in on the nmi_watchdog and 8259 ack issues.
My focus is primarily the ACPI issues involved in getting
these systems up and running in IOAPIC mode.
> The second patch is the C1halt update I suggested in another posting.
> http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/1707.html
Clearly this hang issue is more important than the timer issue.
I'm impressed that you built such a sophisticated patch without
any support from the vendors. But it would be a "really good thing"
if we got some input from the vendors before considering putting
a workaround into the upstream kernel -- for they may have
guidance which would either simplify it, or make it unnecessary.
Perhaps Allen Martin at nVidia can comment?
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-15 20:17 ` Len Brown
@ 2004-04-15 21:04 ` Craig Bradney
2004-04-21 20:22 ` Len Brown
2004-04-15 21:56 ` Arjen Verweij
1 sibling, 1 reply; 73+ messages in thread
From: Craig Bradney @ 2004-04-15 21:04 UTC (permalink / raw)
To: Len Brown
Cc: ross, christian.kroener, linux-kernel, Maciej W. Rozycki,
Jamie Lokier, Prakash K. Cheemplavam, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 3121 bytes --]
On Thu, 2004-04-15 at 22:17, Len Brown wrote:
> On Thu, 2004-04-15 at 11:10, Ross Dickson wrote:
> > On Wednesday 14 April 2004 11:02, Len Brown wrote:
> > > Re: IRQ0 XT-PIC timer issue
> > >
> > > Since the hardware is connected to APIC pin0, it is a BIOS bug
> > > that an ACPI interrupt source override from pin2 to IRQ0 exists.
> > >
> > > With this simple 2.6.5 patch you can specify "acpi_skip_timer_override"
> > > to ignore that bogus BIOS directive. The result is with your
> > > ACPI-enabled APIC-enabled kernel, you'll get IRQ0 IO-APIC-edge timer.
> > >
> > > Probably there is a more clever way to trigger this workaround
> > > automatcially instead of via boot parameter.
>
> > Hi Len, I have updated my nforce2 patches for 2.6.5 to work with your patch.
> > I have tested them only on one nforce2 board Epox 8Rga+ but as little has
> > changed in core functionality from past releases I think all will be OK....
> > Hopefully no clock skew. I saw none on my system but thats no guarantee.
>
> While I don't want to get into the business of maintaining
> a dmi_scan entry for every system with this issue, I think
> it might be a good idea to add a couple of example entries
> for high volume systems for which there is no BIOS fix available.
>
> Got any opinions on which system to use as the example?
> I'll need the output from dmidecode for them.
I have an A7N8X Deluxe v2 BIOS v1007 that I can give u whatever numbers
u need. IOAPIC and APIC are on.
Its running gentoo-dev-sources 2.6.3-r1 plus the idlec1halt patch and
nmi patch from Ross. I guess the kernel doesnt matter too much if its
just board details.
More details of my 2.6.1 days are at
http://atlas.et.tudelft.nl/verwei90/nforce2/
Craig
> > I tried your above patch with the timer_ack on as is default in 2.6.5 and
> > nmi_watchdog=1 failed as expected. I still think Maciej's 8259 ack patch
> > is more complete solution to the ack issue but this one gets watchdog going for
> > nforce2. I cannot see anyone using your above patch without an integrated
> > apic and tsc so I cannot see a problem triggering it off your kern arg.
>
> "acpi_skip_timer_override" is specific to IOAPIC mode,
> since that is the only place that the bogus interrupt
> source override is used.
>
> I'm not clued-in on the nmi_watchdog and 8259 ack issues.
> My focus is primarily the ACPI issues involved in getting
> these systems up and running in IOAPIC mode.
>
> > The second patch is the C1halt update I suggested in another posting.
> > http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/1707.html
>
> Clearly this hang issue is more important than the timer issue.
> I'm impressed that you built such a sophisticated patch without
> any support from the vendors. But it would be a "really good thing"
> if we got some input from the vendors before considering putting
> a workaround into the upstream kernel -- for they may have
> guidance which would either simplify it, or make it unnecessary.
> Perhaps Allen Martin at nVidia can comment?
>
> -Len
>
>
>
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-15 20:17 ` Len Brown
2004-04-15 21:04 ` Craig Bradney
@ 2004-04-15 21:56 ` Arjen Verweij
1 sibling, 0 replies; 73+ messages in thread
From: Arjen Verweij @ 2004-04-15 21:56 UTC (permalink / raw)
To: Len Brown
Cc: ross, christian.kroener, linux-kernel, Maciej W. Rozycki,
Jamie Lokier, Prakash K. Cheemplavam, Craig Bradney, Daniel Drake,
Ian Kumlien, Jesse Allen, Allen Martin
On 15 Apr 2004, Len Brown wrote:
> On Thu, 2004-04-15 at 11:10, Ross Dickson wrote:
> > On Wednesday 14 April 2004 11:02, Len Brown wrote:
> > > Re: IRQ0 XT-PIC timer issue
> > >
> > > Since the hardware is connected to APIC pin0, it is a BIOS bug
> > > that an ACPI interrupt source override from pin2 to IRQ0 exists.
> > >
> > > With this simple 2.6.5 patch you can specify "acpi_skip_timer_override"
> > > to ignore that bogus BIOS directive. The result is with your
> > > ACPI-enabled APIC-enabled kernel, you'll get IRQ0 IO-APIC-edge timer.
> > >
> > > Probably there is a more clever way to trigger this workaround
> > > automatcially instead of via boot parameter.
>
> > Hi Len, I have updated my nforce2 patches for 2.6.5 to work with your patch.
> > I have tested them only on one nforce2 board Epox 8Rga+ but as little has
> > changed in core functionality from past releases I think all will be OK....
> > Hopefully no clock skew. I saw none on my system but thats no guarantee.
>
> While I don't want to get into the business of maintaining
> a dmi_scan entry for every system with this issue, I think
> it might be a good idea to add a couple of example entries
> for high volume systems for which there is no BIOS fix available.
>
> Got any opinions on which system to use as the example?
> I'll need the output from dmidecode for them.
>
> > I tried your above patch with the timer_ack on as is default in 2.6.5 and
> > nmi_watchdog=1 failed as expected. I still think Maciej's 8259 ack patch
> > is more complete solution to the ack issue but this one gets watchdog going for
> > nforce2. I cannot see anyone using your above patch without an integrated
> > apic and tsc so I cannot see a problem triggering it off your kern arg.
>
> "acpi_skip_timer_override" is specific to IOAPIC mode,
> since that is the only place that the bogus interrupt
> source override is used.
>
> I'm not clued-in on the nmi_watchdog and 8259 ack issues.
> My focus is primarily the ACPI issues involved in getting
> these systems up and running in IOAPIC mode.
>
> > The second patch is the C1halt update I suggested in another posting.
> > http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/1707.html
>
> Clearly this hang issue is more important than the timer issue.
> I'm impressed that you built such a sophisticated patch without
> any support from the vendors. But it would be a "really good thing"
> if we got some input from the vendors before considering putting
> a workaround into the upstream kernel -- for they may have
> guidance which would either simplify it, or make it unnecessary.
> Perhaps Allen Martin at nVidia can comment?
Yes, this sounds like a marvellous idea, since every board except some
Shuttle board after a BIOS update does not suffer from these hangs.
Unfortunately, Allen Martin already commented on this once:
"Likely the root of the problem has to do with the way the Linux kernel is
using the ACPI methods to setup the interrupts which is different from win
9x/2k/XP. I can help track this down, unfortunately so far I've been
unable to reproduce the hangs on any of the boards I have."
-Allen
http://lkml.org/lkml/2003/12/5/156
Maybe he can find useful hints on how to crash his box with an nforce2
chipset here:
http://atlas.et.tudelft.nl/verwei90/nforce2/
Basically just enable APIC in the kernel and start pushing the HDD or
anything related to I/O really. The crashes come more regularely in 2.6
kernels because of the increased Hz value.
Regards,
Arjen
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
[not found] ` <1LlEY-36q-11@gated-at.bofh.it>
@ 2004-04-15 23:07 ` Andi Kleen
2004-04-21 22:00 ` Len Brown
0 siblings, 1 reply; 73+ messages in thread
From: Andi Kleen @ 2004-04-15 23:07 UTC (permalink / raw)
To: Len Brown; +Cc: linux-kernel, Allen Martin
Len Brown <len.brown@intel.com> writes:
> While I don't want to get into the business of maintaining
> a dmi_scan entry for every system with this issue, I think
> it might be a good idea to add a couple of example entries
> for high volume systems for which there is no BIOS fix available.
Or do a generic fix: check for the PCI-ID of the Nforce2 and when
it is true and the timer is wrong just correct it. That's ugly,
but it's probably the best solution for such a common issue
(and the IO-APIC code is already filled with workarounds anyways)
One problem is that this likely must happen before the PCI quirks
run. In the x86-64 code I have special "early PCI scanning" code
for this that could be copied. I don't have a Nforce2, but when
someone is willing to test I can do a patch for this.
-Andi
P.S.: This problem of reference BIOS bugs getting haunting Linux
even after they are long fixed is unfortunately common :-(
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-15 21:04 ` Craig Bradney
@ 2004-04-21 20:22 ` Len Brown
2004-04-21 20:33 ` Ian Kumlien
` (2 more replies)
0 siblings, 3 replies; 73+ messages in thread
From: Len Brown @ 2004-04-21 20:22 UTC (permalink / raw)
To: Craig Bradney
Cc: ross, christian.kroener, linux-kernel, Maciej W. Rozycki,
Jamie Lokier, Prakash K. Cheemplavam, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
On Thu, 2004-04-15 at 17:04, Craig Bradney wrote:
> > While I don't want to get into the business of maintaining
> > a dmi_scan entry for every system with this issue, I think
> > it might be a good idea to add a couple of example entries
> > for high volume systems for which there is no BIOS fix available.
> >
> > Got any opinions on which system to use as the example?
> > I'll need the output from dmidecode for them.
>
> I have an A7N8X Deluxe v2 BIOS v1007 that I can give u whatever numbers
> u need. IOAPIC and APIC are on.
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/
thanks,
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
2 siblings, 0 replies; 73+ messages in thread
From: Ian Kumlien @ 2004-04-21 20:33 UTC (permalink / raw)
To: Len Brown
Cc: Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Prakash K. Cheemplavam,
Daniel Drake, Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 667 bytes --]
On Wed, 2004-04-21 at 22:22, Len Brown wrote:
> On Thu, 2004-04-15 at 17:04, Craig Bradney wrote:
> > > Got any opinions on which system to use as the example?
> > > I'll need the output from dmidecode for them.
> >
> > I have an A7N8X Deluxe v2 BIOS v1007 that I can give u whatever numbers
> > u need. IOAPIC and APIC are on.
>
> Please send me the output from dmidecode, available in /usr/sbin/, or
I sent a off ml dmidecode from my ASUS A7N8X-X 2.xx (BIOS: 1007)
Motherboard.
I have also TRIED to send some complaints to ASUS, but thats harder than
you might expect... =P
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
2 siblings, 0 replies; 73+ messages in thread
From: Craig Bradney @ 2004-04-21 20:45 UTC (permalink / raw)
To: Len Brown
Cc: ross, christian.kroener, linux-kernel, Maciej W. Rozycki,
Jamie Lokier, Prakash K. Cheemplavam, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1.1: Type: text/plain, Size: 843 bytes --]
On Wed, 2004-04-21 at 22:22, Len Brown wrote:
> On Thu, 2004-04-15 at 17:04, Craig Bradney wrote:
>
> > > While I don't want to get into the business of maintaining
> > > a dmi_scan entry for every system with this issue, I think
> > > it might be a good idea to add a couple of example entries
> > > for high volume systems for which there is no BIOS fix available.
> > >
> > > Got any opinions on which system to use as the example?
> > > I'll need the output from dmidecode for them.
> >
> > I have an A7N8X Deluxe v2 BIOS v1007 that I can give u whatever numbers
> > u need. IOAPIC and APIC are on.
>
> 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/
Enjoy :) & thanks
Craig
[-- Attachment #1.2: AsusA7N8Xv2BIOS1007_CraigBradney.txt --]
[-- Type: text/plain, Size: 14625 bytes --]
# dmidecode 2.4
SMBIOS 2.2 present.
48 structures occupying 1418 bytes.
Table at 0x000F0000.
Handle 0x0000
DMI type 0, 19 bytes.
BIOS Information
Vendor: Phoenix Technologies, LTD
Version: ASUS A7N8X2.0 Deluxe ACPI BIOS Rev 1007
Release Date: 10/06/2003
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 512 kB
Characteristics:
PCI is supported
PNP is supported
APM is supported
BIOS is upgradeable
BIOS shadowing is allowed
Boot from CD is supported
Selectable boot is supported
BIOS ROM is socketed
EDD is supported
5.25"/360 KB floppy services are supported (int 13h)
5.25"/1.2 MB floppy services are supported (int 13h)
3.5"/720 KB floppy services are supported (int 13h)
3.5"/2.88 MB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
USB legacy is supported
AGP is supported
LS-120 boot is supported
ATAPI Zip drive boot is supported
Handle 0x0001
DMI type 1, 25 bytes.
System Information
Manufacturer: ASUSTeK Computer INC.
Product Name: A7N8X2.0
Version: REV 2.xx
Serial Number: xxxxxxxxxxx
UUID: Not Present
Wake-up Type: Power Switch
Handle 0x0002
DMI type 2, 8 bytes.
Base Board Information
Manufacturer: ASUSTeK Computer INC.
Product Name: A7N8X2.0
Version: REV 2.xx
Serial Number: xxxxxxxxxxx
Handle 0x0003
DMI type 3, 13 bytes.
Chassis Information
Manufacturer: Chassis Manufactture
Type: Desktop
Lock: Not Present
Version: Chassis Version
Serial Number: Chassis serial Number
Asset Tag: Asset-1234567890
Boot-up State: Safe
Power Supply State: Safe
Thermal State: Safe
Security Status: None
Handle 0x0004
DMI type 4, 32 bytes.
Processor Information
Socket Designation: Socket A
Type: Central Processor
Family: Duron
Manufacturer: AMD
ID: A0 06 00 00 FF FB 83 03
Signature: Family 6, Model A, Stepping 0
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
MMX (MMX technology supported)
FXSR (Fast floating-point save and restore)
SSE (Streaming SIMD extensions)
Version: AMD Athlon(tm) XP
Voltage: 1.6 V
External Clock: 166 MHz
Max Speed: 3000 MHz
Current Speed: 1916 MHz
Status: Populated, Enabled
Upgrade: ZIF Socket
L1 Cache Handle: 0x0009
L2 Cache Handle: 0x000A
L3 Cache Handle: No L3 Cache
Handle 0x0005
DMI type 5, 22 bytes.
Memory Controller Information
Error Detecting Method: None
Error Correcting Capabilities:
Other
Supported Interleave: Unknown
Current Interleave: Unknown
Maximum Memory Module Size: 1024 MB
Maximum Total Memory Size: 3072 MB
Supported Speeds:
70 ns
60 ns
50 ns
Supported Memory Types:
DIMM
SDRAM
Memory Module Voltage: 3.3 V
Associated Memory Slots: 3
0x0006
0x0007
0x0008
Enabled Error Correcting Capabilities:
None
Handle 0x0006
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: DDR1
Bank Connections: 0
Current Speed: Unknown
Type: DIMM
Installed Size: 256 MB (Single-bank Connection)
Enabled Size: 256 MB (Single-bank Connection)
Error Status: OK
Handle 0x0007
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: DDR2
Bank Connections: 2
Current Speed: Unknown
Type: DIMM
Installed Size: 256 MB (Single-bank Connection)
Enabled Size: 256 MB (Single-bank Connection)
Error Status: OK
Handle 0x0008
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: DDR3
Bank Connections: 4 5
Current Speed: Unknown
Type: DIMM
Installed Size: 512 MB (Double-bank Connection)
Enabled Size: 512 MB (Double-bank Connection)
Error Status: OK
Handle 0x0009
DMI type 7, 19 bytes.
Cache Information
Socket Designation: L1 Cache
Configuration: Enabled, Not Socketed, Level 1
Operational Mode: Write Back
Location: Internal
Installed Size: 128 KB
Maximum Size: 128 KB
Supported SRAM Types:
Pipeline Burst
Synchronous
Installed SRAM Type: Pipeline Burst Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Data
Associativity: 4-way Set-associative
Handle 0x000A
DMI type 7, 19 bytes.
Cache Information
Socket Designation: L2 Cache
Configuration: Enabled, Not Socketed, Level 2
Operational Mode: Write Back
Location: External
Installed Size: 512 KB
Maximum Size: 512 KB
Supported SRAM Types:
Pipeline Burst
Synchronous
Installed SRAM Type: Pipeline Burst Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Data
Associativity: 4-way Set-associative
Handle 0x000B
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PRIMARY IDE/HDD
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: None
Handle 0x000C
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: SECONDARY IDE/HDD
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: None
Handle 0x000D
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: FLOPPY
Internal Connector Type: On Board Floppy
External Reference Designator: Not Specified
External Connector Type: None
Port Type: None
Handle 0x000E
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Serial Port 1
Internal Connector Type: None
External Reference Designator: Serial Port 1
External Connector Type: DB-9 male
Port Type: Serial Port 16550 Compatible
Handle 0x000F
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Serial Port 2
Internal Connector Type: None
External Reference Designator: Serial Port 2
External Connector Type: DB-9 male
Port Type: Serial Port 16550 Compatible
Handle 0x0010
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Parallel Port
Internal Connector Type: None
External Reference Designator: Parallel Port
External Connector Type: DB-25 female
Port Type: Parallel Port ECP/EPP
Handle 0x0011
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PS/2 Keyboard
Internal Connector Type: None
External Reference Designator: PS/2 Keyboard
External Connector Type: PS/2
Port Type: Keyboard Port
Handle 0x0012
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PS/2 Mouse
Internal Connector Type: None
External Reference Designator: PS/2 Mouse
External Connector Type: PS/2
Port Type: Mouse Port
Handle 0x0013
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB1
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x0014
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB2
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x0015
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB3
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x0016
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB4
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x0017
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB5
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x0018
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB6
External Connector Type: Access Bus (USB)
Port Type: USB
Handle 0x0019
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: ETHERNET
External Connector Type: RJ-45
Port Type: Network Port
Handle 0x001A
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: ETHERNET
External Connector Type: RJ-45
Port Type: Network Port
Handle 0x001B
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: Joystic Port
External Connector Type: DB-15 female
Port Type: Joystick Port
Handle 0x001C
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: MIDI Port
External Connector Type: DB-15 female
Port Type: MIDI Port
Handle 0x001D
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI1
Type: 32-bit PCI
Current Usage: Available
Length: Short
ID: 1
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x001E
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI2
Type: 32-bit PCI
Current Usage: Available
Length: Short
ID: 2
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x001F
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI3
Type: 32-bit PCI
Current Usage: Available
Length: Short
ID: 3
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0020
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI4
Type: 32-bit PCI
Current Usage: Available
Length: Short
ID: 4
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0021
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI5
Type: 32-bit PCI
Current Usage: Available
Length: Short
ID: 5
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0022
DMI type 9, 13 bytes.
System Slot Information
Designation: AGP
Type: 32-bit AGP
Current Usage: In Use
Length: Short
ID: 6
Characteristics:
3.3 V is provided
Handle 0x0023
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: Onboard 1394
External Connector Type: IEEE 1394
Port Type: Firewire (IEEE P1394)
Handle 0x0024
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: Line In Jack Port
External Connector Type: Mini Jack (headphones)
Port Type: Audio Port
Handle 0x0025
DMI type 13, 22 bytes.
BIOS Language Information
Installable Languages: 3
n|US|iso8859-1
n|US|iso8859-1
r|CA|iso8859-1
Currently Installed Language: n|US|iso8859-1
Handle 0x0026
DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 1536 MB
Error Information Handle: Not Provided
Number Of Devices: 3
Handle 0x0027
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x0026
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 256 MB
Form Factor: DIMM
Set: None
Locator: DDR1
Bank Locator: Bank0/1
Type: DRAM
Type Detail: Synchronous
Handle 0x0028
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x0026
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 256 MB
Form Factor: DIMM
Set: None
Locator: DDR2
Bank Locator: Bank2/3
Type: DRAM
Type Detail: Synchronous
Handle 0x0029
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x0026
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 512 MB
Form Factor: DIMM
Set: None
Locator: DDR3
Bank Locator: Bank4/5
Type: DRAM
Type Detail: Synchronous
Handle 0x002A
DMI type 19, 15 bytes.
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0003FFFFFFF
Range Size: 1 GB
Physical Array Handle: 0x0026
Partition Width: 0
Handle 0x002B
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0000FFFFFFF
Range Size: 256 MB
Physical Device Handle: 0x0027
Memory Array Mapped Address Handle: 0x002A
Partition Row Position: 1
Handle 0x002C
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00010000000
Ending Address: 0x0001FFFFFFF
Range Size: 256 MB
Physical Device Handle: 0x0028
Memory Array Mapped Address Handle: 0x002A
Partition Row Position: 1
Handle 0x002D
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00020000000
Ending Address: 0x0003FFFFFFF
Range Size: 512 MB
Physical Device Handle: 0x0029
Memory Array Mapped Address Handle: 0x002A
Partition Row Position: 1
Handle 0x002E
DMI type 32, 11 bytes.
System Boot Information
Status: No errors detected
Handle 0x002F
DMI type 127, 4 bytes.
End Of Table
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
2 siblings, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-21 21:28 UTC (permalink / raw)
To: Len Brown
Cc: Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 873 bytes --]
Len Brown wrote:
> On Thu, 2004-04-15 at 17:04, Craig Bradney wrote:
>
>
>>>While I don't want to get into the business of maintaining
>>>a dmi_scan entry for every system with this issue, I think
>>>it might be a good idea to add a couple of example entries
>>>for high volume systems for which there is no BIOS fix available.
>>>
>>>Got any opinions on which system to use as the example?
>>>I'll need the output from dmidecode for them.
>>
>>I have an A7N8X Deluxe v2 BIOS v1007 that I can give u whatever numbers
>>u need. IOAPIC and APIC are on.
>
>
> 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/
Hi,
this is the output for Abit NF7-S Rev20 using bios d23. I have NOT
activated APIC for this. Is it needed?
bye,
Prakash
[-- Attachment #2: dmiabitnf7sv2d23.txt --]
[-- Type: text/plain, Size: 11288 bytes --]
# dmidecode 2.3
SMBIOS 2.2 present.
37 structures occupying 981 bytes.
Table at 0x000F0800.
Handle 0x0000
DMI type 0, 19 bytes.
BIOS Information
Vendor: Phoenix Technologies, LTD
Version: 6.00 PG
Release Date: 03/24/2004
Address: 0xE0000
Runtime Size: 128 kB
ROM Size: 512 kB
Characteristics:
ISA is supported
PCI is supported
PNP is supported
APM is supported
BIOS is upgradeable
BIOS shadowing is allowed
ESCD support is available
Boot from CD is supported
Selectable boot is supported
BIOS ROM is socketed
EDD is supported
5.25"/360 KB floppy services are supported (int 13h)
5.25"/1.2 MB floppy services are supported (int 13h)
3.5"/720 KB floppy services are supported (int 13h)
3.5"/2.88 MB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
USB legacy is supported
AGP is supported
LS-120 boot is supported
ATAPI Zip drive boot is supported
Handle 0x0001
DMI type 1, 25 bytes.
System Information
Manufacturer:
Product Name:
Version:
Serial Number:
UUID: 00000000-0000-0000-0000-00508DF1FBE3
Wake-up Type: Power Switch
Handle 0x0002
DMI type 2, 8 bytes.
Base Board Information
Manufacturer: http://www.abit.com.tw/
Product Name: NF7-S/NF7,NF7-V (nVidia-nForce2)
Version: 2.X,1.0
Serial Number:
Handle 0x0003
DMI type 3, 13 bytes.
Chassis Information
Manufacturer:
Type: Desktop
Lock: Not Present
Version:
Serial Number:
Asset Tag:
Boot-up State: Unknown
Power Supply State: Unknown
Thermal State: Unknown
Security Status: Unknown
Handle 0x0004
DMI type 4, 32 bytes.
Processor Information
Socket Designation: Socket A
Type: Central Processor
Family: Athlon
Manufacturer: AMD
ID: 81 06 00 00 FF FB 83 03
Signature: Type 0, Family 6, Model 8, Stepping 1
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
MMX (MMX technology supported)
FXSR (Fast floating-point save and restore)
SSE (Streaming SIMD extensions)
Version: AMD Athlon(tm) XP
Voltage: 1.6 V
External Clock: 200 MHz
Max Speed: 3000 MHz
Current Speed: 2100 MHz
Status: Populated, Enabled
Upgrade: ZIF Socket
L1 Cache Handle: 0x0009
L2 Cache Handle: 0x000A
L3 Cache Handle: No L3 Cache
Handle 0x0005
DMI type 5, 22 bytes.
Memory Controller Information
Error Detecting Method: 8-bit Parity
Error Correcting Capabilities:
None
Supported Interleave: One-way Interleave
Current Interleave: One-way Interleave
Maximum Memory Module Size: 1024 MB
Maximum Total Memory Size: 3072 MB
Supported Speeds:
Other
Supported Memory Types:
Other
DIMM
SDRAM
Memory Module Voltage: 2.9 V
Associated Memory Slots: 3
0x0006
0x0007
0x0008
Enabled Error Correcting Capabilities: None
Handle 0x0006
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A0
Bank Connections: 0 1
Current Speed: 10 ns
Type: Other DIMM SDRAM
Installed Size: 512 MB (Double-bank Connection)
Enabled Size: 512 MB (Double-bank Connection)
Error Status: OK
Handle 0x0007
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A1
Bank Connections: None
Current Speed: 10 ns
Type: Other DIMM SDRAM
Installed Size: Not Installed (Single-bank Connection)
Enabled Size: Not Installed (Single-bank Connection)
Error Status: OK
Handle 0x0008
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A2
Bank Connections: 4 5
Current Speed: 10 ns
Type: Other DIMM SDRAM
Installed Size: 512 MB (Double-bank Connection)
Enabled Size: 512 MB (Double-bank Connection)
Error Status: OK
Handle 0x0009
DMI type 7, 19 bytes.
Cache Information
Socket Designation: Internal Cache
Configuration: Enabled, Not Socketed, Level 1
Operational Mode: Write Back
Location: Internal
Installed Size: 128 KB
Maximum Size: 128 KB
Supported SRAM Types:
Synchronous
Installed SRAM Type: Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x000A
DMI type 7, 19 bytes.
Cache Information
Socket Designation: External Cache
Configuration: Enabled, Not Socketed, Level 2
Operational Mode: Write Back
Location: External
Installed Size: 256 KB
Maximum Size: 256 KB
Supported SRAM Types:
Synchronous
Installed SRAM Type: Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x000B
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PRIMARY IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x000C
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: SECONDARY IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x000D
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: FDD
Internal Connector Type: On Board Floppy
External Reference Designator: Not Specified
External Connector Type: None
Port Type: 8251 FIFO Compatible
Handle 0x000E
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: COM1
Internal Connector Type: 9 Pin Dual Inline (pin 10 cut)
External Reference Designator:
External Connector Type: DB-9 male
Port Type: Serial Port 16450 Compatible
Handle 0x000F
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: COM2
Internal Connector Type: 9 Pin Dual Inline (pin 10 cut)
External Reference Designator:
External Connector Type: DB-9 male
Port Type: Serial Port 16450 Compatible
Handle 0x0010
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: LPT1
Internal Connector Type: DB-25 female
External Reference Designator:
External Connector Type: DB-25 female
Port Type: Parallel Port ECP/EPP
Handle 0x0011
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Keyboard
Internal Connector Type: PS/2
External Reference Designator:
External Connector Type: PS/2
Port Type: Keyboard Port
Handle 0x0012
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PS/2 Mouse
Internal Connector Type: PS/2
External Reference Designator:
External Connector Type: PS/2
Port Type: Mouse Port
Handle 0x0013
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB
External Connector Type: Other
Port Type: USB
Handle 0x0014
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI0
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 1
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0015
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI1
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 2
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0016
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI2
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 3
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0017
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI3
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 4
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0018
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI4
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 5
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0019
DMI type 9, 13 bytes.
System Slot Information
Designation: AGP
Type: 32-bit AGP
Current Usage: Available
Length: Long
ID: 240
Characteristics:
5.0 V is provided
3.3 V is provided
Handle 0x001A
DMI type 13, 22 bytes.
BIOS Language Information
Installable Languages: 3
n|US|iso8859-1
n|US|iso8859-1
r|CA|iso8859-1
Currently Installed Language: n|US|iso8859-1
Handle 0x001B
DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 1536 MB
Error Information Handle: Not Provided
Number Of Devices: 3
Handle 0x001C
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: 512 MB
Form Factor: DIMM
Set: None
Locator: A0
Bank Locator: Bank0/1
Type: Unknown
Type Detail: None
Handle 0x001D
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: DIMM
Set: None
Locator: A1
Bank Locator: Bank2/3
Type: Unknown
Type Detail: None
Handle 0x001E
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: 512 MB
Form Factor: DIMM
Set: None
Locator: A2
Bank Locator: Bank4/5
Type: Unknown
Type Detail: None
Handle 0x001F
DMI type 19, 15 bytes.
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0003FFFFFFF
Range Size: 1 GB
Physical Array Handle: 0x001B
Partition Width: 0
Handle 0x0020
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0001FFFFFFF
Range Size: 512 MB
Physical Device Handle: 0x001C
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0021
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000000003FF
Range Size: 1 kB
Physical Device Handle: 0x001D
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0022
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00020000000
Ending Address: 0x0003FFFFFFF
Range Size: 512 MB
Physical Device Handle: 0x001E
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0023
DMI type 32, 11 bytes.
System Boot Information
Status: No errors detected
Handle 0x0024
DMI type 127, 4 bytes.
End Of Table
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
0 siblings, 0 replies; 73+ messages in thread
From: Len Brown @ 2004-04-21 22:00 UTC (permalink / raw)
To: Andi Kleen; +Cc: linux-kernel, Allen Martin
On Thu, 2004-04-15 at 19:07, Andi Kleen wrote:
> Len Brown <len.brown@intel.com> writes:
>
> > While I don't want to get into the business of maintaining
> > a dmi_scan entry for every system with this issue, I think
> > it might be a good idea to add a couple of example entries
> > for high volume systems for which there is no BIOS fix available.
>
> Or do a generic fix: check for the PCI-ID of the Nforce2 and when
> it is true and the timer is wrong just correct it. That's ugly,
> but it's probably the best solution for such a common issue
> (and the IO-APIC code is already filled with workarounds anyways)
IMO the fact that the IOAPIC code is full of workarounds is a reason NOT
to add another one.
> One problem is that this likely must happen before the PCI quirks
> run. In the x86-64 code I have special "early PCI scanning" code
> for this that could be copied. I don't have a Nforce2, but when
> someone is willing to test I can do a patch for this.
If this issue had no other fix, I'd agree that the complexity is worth
it. But a BIOS upgrade fixes this -- so I think dmi-scan simplicity
is the way to go.
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-21 21:28 ` Prakash K. Cheemplavam
@ 2004-04-21 22:41 ` Len Brown
2004-04-22 7:26 ` Prakash K. Cheemplavam
` (4 more replies)
0 siblings, 5 replies; 73+ messages in thread
From: Len Brown @ 2004-04-21 22:41 UTC (permalink / raw)
To: Prakash K. Cheemplavam
Cc: Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- 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)
{
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-21 22:41 ` Len Brown
@ 2004-04-22 7:26 ` Prakash K. Cheemplavam
2004-04-22 14:58 ` Len Brown
2004-04-22 8:45 ` Craig Bradney
` (3 subsequent siblings)
4 siblings, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-22 7:26 UTC (permalink / raw)
To: Len Brown
Cc: Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 1500 bytes --]
Len Brown wrote:
>>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.
Ok, I recompiled using your (former) patch and Ross' apic tack patch. I
attached the new dmidecode Text.
> 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.
Are you referring to (as the first line doesn't say much):
Product Name: NF7-S/NF7,NF7-V (nVidia-nForce2)
Version: 2.X,1.0
Seems pretty much OK, though I don't understand, why 1.0 is in the
Version string. Durthermore I don't understand, why "Phoenix" appears as
bios vendor. It should be Award, AFAIK.
> I'm interested only in the latest BIOS -- if it is still broken.
It is the latest (d23). And I guess it is broken, as without your patch
the timer gets connected to XT-PIC.
> The assumption is that if a fixed BIOS is available, the users
> should upgrade.
Well, I posted in Abit's Forum, but I don't know whether it will have an
effect.
bye,
Prakash
[-- Attachment #2: dmiabitnf7sv2d23apic.txt --]
[-- Type: text/plain, Size: 11288 bytes --]
# dmidecode 2.3
SMBIOS 2.2 present.
37 structures occupying 981 bytes.
Table at 0x000F0800.
Handle 0x0000
DMI type 0, 19 bytes.
BIOS Information
Vendor: Phoenix Technologies, LTD
Version: 6.00 PG
Release Date: 03/24/2004
Address: 0xE0000
Runtime Size: 128 kB
ROM Size: 512 kB
Characteristics:
ISA is supported
PCI is supported
PNP is supported
APM is supported
BIOS is upgradeable
BIOS shadowing is allowed
ESCD support is available
Boot from CD is supported
Selectable boot is supported
BIOS ROM is socketed
EDD is supported
5.25"/360 KB floppy services are supported (int 13h)
5.25"/1.2 MB floppy services are supported (int 13h)
3.5"/720 KB floppy services are supported (int 13h)
3.5"/2.88 MB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
USB legacy is supported
AGP is supported
LS-120 boot is supported
ATAPI Zip drive boot is supported
Handle 0x0001
DMI type 1, 25 bytes.
System Information
Manufacturer:
Product Name:
Version:
Serial Number:
UUID: 00000000-0000-0000-0000-00508DF1FBE3
Wake-up Type: Power Switch
Handle 0x0002
DMI type 2, 8 bytes.
Base Board Information
Manufacturer: http://www.abit.com.tw/
Product Name: NF7-S/NF7,NF7-V (nVidia-nForce2)
Version: 2.X,1.0
Serial Number:
Handle 0x0003
DMI type 3, 13 bytes.
Chassis Information
Manufacturer:
Type: Desktop
Lock: Not Present
Version:
Serial Number:
Asset Tag:
Boot-up State: Unknown
Power Supply State: Unknown
Thermal State: Unknown
Security Status: Unknown
Handle 0x0004
DMI type 4, 32 bytes.
Processor Information
Socket Designation: Socket A
Type: Central Processor
Family: Athlon
Manufacturer: AMD
ID: 81 06 00 00 FF FB 83 03
Signature: Type 0, Family 6, Model 8, Stepping 1
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
MMX (MMX technology supported)
FXSR (Fast floating-point save and restore)
SSE (Streaming SIMD extensions)
Version: AMD Athlon(tm) XP
Voltage: 1.6 V
External Clock: 200 MHz
Max Speed: 3000 MHz
Current Speed: 2100 MHz
Status: Populated, Enabled
Upgrade: ZIF Socket
L1 Cache Handle: 0x0009
L2 Cache Handle: 0x000A
L3 Cache Handle: No L3 Cache
Handle 0x0005
DMI type 5, 22 bytes.
Memory Controller Information
Error Detecting Method: 8-bit Parity
Error Correcting Capabilities:
None
Supported Interleave: One-way Interleave
Current Interleave: One-way Interleave
Maximum Memory Module Size: 1024 MB
Maximum Total Memory Size: 3072 MB
Supported Speeds:
Other
Supported Memory Types:
Other
DIMM
SDRAM
Memory Module Voltage: 2.9 V
Associated Memory Slots: 3
0x0006
0x0007
0x0008
Enabled Error Correcting Capabilities: None
Handle 0x0006
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A0
Bank Connections: 0 1
Current Speed: 10 ns
Type: Other DIMM SDRAM
Installed Size: 512 MB (Double-bank Connection)
Enabled Size: 512 MB (Double-bank Connection)
Error Status: OK
Handle 0x0007
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A1
Bank Connections: None
Current Speed: 10 ns
Type: Other DIMM SDRAM
Installed Size: Not Installed (Single-bank Connection)
Enabled Size: Not Installed (Single-bank Connection)
Error Status: OK
Handle 0x0008
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A2
Bank Connections: 4 5
Current Speed: 10 ns
Type: Other DIMM SDRAM
Installed Size: 512 MB (Double-bank Connection)
Enabled Size: 512 MB (Double-bank Connection)
Error Status: OK
Handle 0x0009
DMI type 7, 19 bytes.
Cache Information
Socket Designation: Internal Cache
Configuration: Enabled, Not Socketed, Level 1
Operational Mode: Write Back
Location: Internal
Installed Size: 128 KB
Maximum Size: 128 KB
Supported SRAM Types:
Synchronous
Installed SRAM Type: Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x000A
DMI type 7, 19 bytes.
Cache Information
Socket Designation: External Cache
Configuration: Enabled, Not Socketed, Level 2
Operational Mode: Write Back
Location: External
Installed Size: 256 KB
Maximum Size: 256 KB
Supported SRAM Types:
Synchronous
Installed SRAM Type: Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x000B
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PRIMARY IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x000C
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: SECONDARY IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x000D
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: FDD
Internal Connector Type: On Board Floppy
External Reference Designator: Not Specified
External Connector Type: None
Port Type: 8251 FIFO Compatible
Handle 0x000E
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: COM1
Internal Connector Type: 9 Pin Dual Inline (pin 10 cut)
External Reference Designator:
External Connector Type: DB-9 male
Port Type: Serial Port 16450 Compatible
Handle 0x000F
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: COM2
Internal Connector Type: 9 Pin Dual Inline (pin 10 cut)
External Reference Designator:
External Connector Type: DB-9 male
Port Type: Serial Port 16450 Compatible
Handle 0x0010
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: LPT1
Internal Connector Type: DB-25 female
External Reference Designator:
External Connector Type: DB-25 female
Port Type: Parallel Port ECP/EPP
Handle 0x0011
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Keyboard
Internal Connector Type: PS/2
External Reference Designator:
External Connector Type: PS/2
Port Type: Keyboard Port
Handle 0x0012
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PS/2 Mouse
Internal Connector Type: PS/2
External Reference Designator:
External Connector Type: PS/2
Port Type: Mouse Port
Handle 0x0013
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB
External Connector Type: Other
Port Type: USB
Handle 0x0014
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI0
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 1
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0015
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI1
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 2
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0016
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI2
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 3
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0017
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI3
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 4
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0018
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI4
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 5
Characteristics:
5.0 V is provided
3.3 V is provided
PME signal is supported
Handle 0x0019
DMI type 9, 13 bytes.
System Slot Information
Designation: AGP
Type: 32-bit AGP
Current Usage: Available
Length: Long
ID: 240
Characteristics:
5.0 V is provided
3.3 V is provided
Handle 0x001A
DMI type 13, 22 bytes.
BIOS Language Information
Installable Languages: 3
n|US|iso8859-1
n|US|iso8859-1
r|CA|iso8859-1
Currently Installed Language: n|US|iso8859-1
Handle 0x001B
DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 1536 MB
Error Information Handle: Not Provided
Number Of Devices: 3
Handle 0x001C
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: 512 MB
Form Factor: DIMM
Set: None
Locator: A0
Bank Locator: Bank0/1
Type: Unknown
Type Detail: None
Handle 0x001D
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: DIMM
Set: None
Locator: A1
Bank Locator: Bank2/3
Type: Unknown
Type Detail: None
Handle 0x001E
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: 512 MB
Form Factor: DIMM
Set: None
Locator: A2
Bank Locator: Bank4/5
Type: Unknown
Type Detail: None
Handle 0x001F
DMI type 19, 15 bytes.
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0003FFFFFFF
Range Size: 1 GB
Physical Array Handle: 0x001B
Partition Width: 0
Handle 0x0020
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0001FFFFFFF
Range Size: 512 MB
Physical Device Handle: 0x001C
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0021
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000000003FF
Range Size: 1 kB
Physical Device Handle: 0x001D
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0022
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00020000000
Ending Address: 0x0003FFFFFFF
Range Size: 512 MB
Physical Device Handle: 0x001E
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0023
DMI type 32, 11 bytes.
System Boot Information
Status: No errors detected
Handle 0x0024
DMI type 127, 4 bytes.
End Of Table
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-21 22:41 ` Len Brown
2004-04-22 7:26 ` Prakash K. Cheemplavam
@ 2004-04-22 8:45 ` Craig Bradney
2004-04-22 15:03 ` Len Brown
2004-04-22 8:50 ` Arjen Verweij
` (2 subsequent siblings)
4 siblings, 1 reply; 73+ messages in thread
From: Craig Bradney @ 2004-04-22 8:45 UTC (permalink / raw)
To: Len Brown
Cc: Prakash K. Cheemplavam, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 6447 bytes --]
On Thu, 2004-04-22 at 00:41, Len Brown wrote:
> > 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).
Do we need any other patch? eg the idlec1halt patch? My Athlon still has
2.6.3 on it.
> 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.
+ { 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") }},
my dmidecode output also shows (in the first BIOS information section):
Vendor: Phoenix Technologies, LTD
although the Manufacturer is ASUSTek Computer INC. form the Base Board
and System sections.
Not really sure about the code. If it matches on all of above then it
might not work. Ill try a new kernel later today and see the result.
> 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.
>
Yes, I just checked yesterday and there was nothing new.
thanks
Craig
> 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: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-21 22:41 ` Len Brown
2004-04-22 7:26 ` Prakash K. Cheemplavam
2004-04-22 8:45 ` Craig Bradney
@ 2004-04-22 8:50 ` Arjen Verweij
2004-04-22 16:39 ` Jesse Allen
2004-05-01 6:51 ` Prakash K. Cheemplavam
4 siblings, 0 replies; 73+ messages in thread
From: Arjen Verweij @ 2004-04-22 8:50 UTC (permalink / raw)
To: Len Brown
Cc: Prakash K. Cheemplavam, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, Jesse Allen, Allen Martin
Len,
Please bear in mind that the people from Shuttle are the only ones that
have seemingly fixed it, alledgedly, late in December. I only have data
for one Shuttle board, but that if they (Shuttle) would fix it, they would
fix it for all boards. For Shuttle AN35N rev 1.1 there is a BIOS update
from 05-Dec-2003 that has probably addressed this issue.
So if you are looking to reproduce this hang, don't update your BIOS :)
Regards,
Arjen
On 21 Apr 2004, Len Brown wrote:
> > 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)
> {
>
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-22 7:26 ` Prakash K. Cheemplavam
@ 2004-04-22 14:58 ` Len Brown
0 siblings, 0 replies; 73+ messages in thread
From: Len Brown @ 2004-04-22 14:58 UTC (permalink / raw)
To: Prakash K. Cheemplavam
Cc: Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
On Thu, 2004-04-22 at 03:26, Prakash K. Cheemplavam wrote:
> Len Brown wrote:
> > Yes, you need to enable ACPI and IOAPIC. The goal of this patch
> > is to address the XT-PIC timer issue in IOAPIC mode.
>
> Ok, I recompiled using your (former) patch and Ross' apic tack patch. I
> attached the new dmidecode Text.
Actually dmidecode dumps hard-coded BIOS data, so it will not change
unless you upgrade your BIOS.
> > 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.
>
> Are you referring to (as the first line doesn't say much):
>
> Product Name: NF7-S/NF7,NF7-V (nVidia-nForce2)
> Version: 2.X,1.0
+ { ignore_timer_override, "Abit NF7-S v2", {
This one is for humans and anything can be in the string.
+ 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") }},
These are keys in the DMI table, and have to match the BIOS (as seen in
dmidecode) exactly.
> Seems pretty much OK, though I don't understand, why 1.0 is in the
> Version string. Durthermore I don't understand, why "Phoenix" appears as
> bios vendor. It should be Award, AFAIK.
Phoenix and Award merged.
Doesn't really matter what it says, it is just a string compare to
linux. Also, I chose not to look at the BIOS vendor in this example
b/c it adds no value, here we're just looking at BOARD vendor & name,
plus BIOS version and date.
Thanks for confirming that the entry matched your system and that the
patch triggered automatically.
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-22 8:45 ` Craig Bradney
@ 2004-04-22 15:03 ` Len Brown
2004-04-22 20:50 ` Craig Bradney
0 siblings, 1 reply; 73+ messages in thread
From: Len Brown @ 2004-04-22 15:03 UTC (permalink / raw)
To: Craig Bradney
Cc: Prakash K. Cheemplavam, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
On Thu, 2004-04-22 at 04:45, Craig Bradney wrote:
> > 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).
>
>
> Do we need any other patch? eg the idlec1halt patch? My Athlon still has
> 2.6.3 on it.
If you needed idlec1halt before, you still need it.
This patch just addresses the XT-PIC timer issue.
>
> > 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.
>
> + { 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") }},
>
> my dmidecode output also shows (in the first BIOS information section):
> Vendor: Phoenix Technologies, LTD
> although the Manufacturer is ASUSTek Computer INC. form the Base Board
> and System sections.
Right, DMI has separate sections for System, Board, BIOS, and we're
using two pieces from the BOARD and two pieces from the BIOS sections.
> Not really sure about the code. If it matches on all of above then it
> might not work. Ill try a new kernel later today and see the result.
The workaround is triggered only if all the MATCH()'s above match.
If it doesn't trigger, then either I munged it on copy out of dmidecode
or you've got a different BIOS and we need a new dmidecode...
> > 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.
> >
>
> Yes, I just checked yesterday and there was nothing new.
thanks,
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-21 22:41 ` Len Brown
` (2 preceding siblings ...)
2004-04-22 8:50 ` Arjen Verweij
@ 2004-04-22 16:39 ` Jesse Allen
2004-04-22 17:21 ` Len Brown
2004-05-01 6:51 ` Prakash K. Cheemplavam
4 siblings, 1 reply; 73+ messages in thread
From: Jesse Allen @ 2004-04-22 16:39 UTC (permalink / raw)
To: Len Brown
Cc: Prakash K. Cheemplavam, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 1221 bytes --]
On Wed, Apr 21, 2004 at 06:41:38PM -0400, Len Brown wrote:
> > Please send me the output from dmidecode, available in /usr/sbin/, or
>
> 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...
>
On the Shuttle AN35N, the C1 disconnect option default is auto. If you're
talking about this board, or another board Shuttle seemingly fixed, then I
can tell you that I haven't been able to get my to hang with vanilla kernels.
As for your patch, I get a fast timer, and gain about 1 sec per 5 minutes.
The only patch that seemed to work without a fast timer so far was the one
removed by Linus in a testing version. The AN35N has the timer override
bug.
Attached is the dmidecode for the AN35N. Note: onboard sound may be disabled.
Jesse
[-- Attachment #2: junk --]
[-- Type: text/plain, Size: 11071 bytes --]
# dmidecode 2.4
SMBIOS 2.2 present.
37 structures occupying 937 bytes.
Table at 0x000F0000.
Handle 0x0000
DMI type 0, 19 bytes.
BIOS Information
Vendor: Phoenix Technologies, LTD
Version: 6.00 PG
Release Date: 12/05/2003
Address: 0xE0000
Runtime Size: 128 kB
ROM Size: 256 kB
Characteristics:
ISA is supported
PCI is supported
PNP is supported
APM is supported
BIOS is upgradeable
BIOS shadowing is allowed
Boot from CD is supported
Selectable boot is supported
BIOS ROM is socketed
EDD is supported
5.25"/360 KB floppy services are supported (int 13h)
5.25"/1.2 MB floppy services are supported (int 13h)
3.5"/720 KB floppy services are supported (int 13h)
3.5"/2.88 MB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
CGA/mono video services are supported (int 10h)
ACPI is supported
USB legacy is supported
AGP is supported
LS-120 boot is supported
ATAPI Zip drive boot is supported
Handle 0x0001
DMI type 1, 25 bytes.
System Information
Manufacturer:
Product Name:
Version:
Serial Number:
UUID: 1297A535-FFFF-FFFF-FFFF-FFFFFFFFFFFF
Wake-up Type: Power Switch
Handle 0x0002
DMI type 2, 8 bytes.
Base Board Information
Manufacturer: Shuttle Inc
Product Name: AN35
Version:
Serial Number:
Handle 0x0003
DMI type 3, 13 bytes.
Chassis Information
Manufacturer:
Type: Desktop
Lock: Not Present
Version:
Serial Number:
Asset Tag:
Boot-up State: Unknown
Power Supply State: Unknown
Thermal State: Unknown
Security Status: Unknown
Handle 0x0004
DMI type 4, 32 bytes.
Processor Information
Socket Designation: Socket A
Type: Central Processor
Family: Duron
Manufacturer: AMD
ID: A0 06 00 00 FF FB 83 03
Signature: Family 6, Model A, Stepping 0
Flags:
FPU (Floating-point unit on-chip)
VME (Virtual mode extension)
DE (Debugging extension)
PSE (Page size extension)
TSC (Time stamp counter)
MSR (Model specific registers)
PAE (Physical address extension)
MCE (Machine check exception)
CX8 (CMPXCHG8 instruction supported)
APIC (On-chip APIC hardware supported)
SEP (Fast system call)
MTRR (Memory type range registers)
PGE (Page global enable)
MCA (Machine check architecture)
CMOV (Conditional move instruction supported)
PAT (Page attribute table)
PSE-36 (36-bit page size extension)
MMX (MMX technology supported)
FXSR (Fast floating-point save and restore)
SSE (Streaming SIMD extensions)
Version: AMD Athlon(tm) XP
Voltage: 1.6 V
External Clock: 166 MHz
Max Speed: 2000 MHz
Current Speed: 1916 MHz
Status: Populated, Enabled
Upgrade: ZIF Socket
L1 Cache Handle: 0x0009
L2 Cache Handle: 0x000A
L3 Cache Handle: No L3 Cache
Handle 0x0005
DMI type 5, 22 bytes.
Memory Controller Information
Error Detecting Method: 8-bit Parity
Error Correcting Capabilities:
None
Supported Interleave: One-way Interleave
Current Interleave: One-way Interleave
Maximum Memory Module Size: 32 MB
Maximum Total Memory Size: 96 MB
Supported Speeds:
70 ns
60 ns
Supported Memory Types:
Standard
EDO
Memory Module Voltage: 5.0 V
Associated Memory Slots: 3
0x0006
0x0007
0x0008
Enabled Error Correcting Capabilities: None
Handle 0x0006
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A0
Bank Connections: None
Current Speed: 10 ns
Type: Other
Installed Size: Not Installed (Single-bank Connection)
Enabled Size: Not Installed (Single-bank Connection)
Error Status: OK
Handle 0x0007
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A1
Bank Connections: 2
Current Speed: 10 ns
Type: Other
Installed Size: 256 MB (Single-bank Connection)
Enabled Size: 256 MB (Single-bank Connection)
Error Status: OK
Handle 0x0008
DMI type 6, 12 bytes.
Memory Module Information
Socket Designation: A2
Bank Connections: None
Current Speed: 10 ns
Type: Other
Installed Size: Not Installed (Single-bank Connection)
Enabled Size: Not Installed (Single-bank Connection)
Error Status: OK
Handle 0x0009
DMI type 7, 19 bytes.
Cache Information
Socket Designation: Internal Cache
Configuration: Enabled, Not Socketed, Level 1
Operational Mode: Write Back
Location: Internal
Installed Size: 128 KB
Maximum Size: 128 KB
Supported SRAM Types:
Synchronous
Installed SRAM Type: Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x000A
DMI type 7, 19 bytes.
Cache Information
Socket Designation: External Cache
Configuration: Enabled, Not Socketed, Level 2
Operational Mode: Write Back
Location: External
Installed Size: 512 KB
Maximum Size: 512 KB
Supported SRAM Types:
Synchronous
Installed SRAM Type: Synchronous
Speed: Unknown
Error Correction Type: Unknown
System Type: Unknown
Associativity: Unknown
Handle 0x000B
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PRIMARY IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x000C
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: SECONDARY IDE
Internal Connector Type: On Board IDE
External Reference Designator: Not Specified
External Connector Type: None
Port Type: Other
Handle 0x000D
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: FDD
Internal Connector Type: On Board Floppy
External Reference Designator: Not Specified
External Connector Type: None
Port Type: 8251 FIFO Compatible
Handle 0x000E
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: COM1
Internal Connector Type: 9 Pin Dual Inline (pin 10 cut)
External Reference Designator:
External Connector Type: DB-9 male
Port Type: Serial Port 16450 Compatible
Handle 0x000F
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: COM2
Internal Connector Type: 9 Pin Dual Inline (pin 10 cut)
External Reference Designator:
External Connector Type: DB-9 male
Port Type: Serial Port 16450 Compatible
Handle 0x0010
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: LPT1
Internal Connector Type: DB-25 female
External Reference Designator:
External Connector Type: DB-25 female
Port Type: Parallel Port ECP/EPP
Handle 0x0011
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Keyboard
Internal Connector Type: PS/2
External Reference Designator:
External Connector Type: PS/2
Port Type: Keyboard Port
Handle 0x0012
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: PS/2 Mouse
Internal Connector Type: PS/2
External Reference Designator:
External Connector Type: PS/2
Port Type: Mouse Port
Handle 0x0013
DMI type 8, 9 bytes.
Port Connector Information
Internal Reference Designator: Not Specified
Internal Connector Type: None
External Reference Designator: USB0
External Connector Type: Other
Port Type: USB
Handle 0x0014
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI0
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 1
Characteristics:
5.0 V is provided
PME signal is supported
Handle 0x0015
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI1
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 2
Characteristics:
5.0 V is provided
PME signal is supported
Handle 0x0016
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI2
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 3
Characteristics:
5.0 V is provided
PME signal is supported
Handle 0x0017
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI3
Type: 32-bit PCI
Current Usage: Available
Length: Long
ID: 4
Characteristics:
5.0 V is provided
PME signal is supported
Handle 0x0018
DMI type 9, 13 bytes.
System Slot Information
Designation: PCI4
Type: 32-bit PCI
Current Usage: In Use
Length: Long
ID: 5
Characteristics:
5.0 V is provided
PME signal is supported
Handle 0x0019
DMI type 9, 13 bytes.
System Slot Information
Designation: AGP
Type: 32-bit AGP
Current Usage: Available
Length: Long
ID: 240
Characteristics:
5.0 V is provided
Handle 0x001A
DMI type 13, 22 bytes.
BIOS Language Information
Installable Languages: 3
n|US|iso8859-1
n|US|iso8859-1
r|CA|iso8859-1
Currently Installed Language: n|US|iso8859-1
Handle 0x001B
DMI type 16, 15 bytes.
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 1536 MB
Error Information Handle: Not Provided
Number Of Devices: 3
Handle 0x001C
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: DIMM
Set: None
Locator: A0
Bank Locator: Bank0/1
Type: Unknown
Type Detail: None
Handle 0x001D
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: 256 MB
Form Factor: DIMM
Set: None
Locator: A1
Bank Locator: Bank2/3
Type: Unknown
Type Detail: None
Handle 0x001E
DMI type 17, 21 bytes.
Memory Device
Array Handle: 0x001B
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: DIMM
Set: None
Locator: A2
Bank Locator: Bank4/5
Type: Unknown
Type Detail: None
Handle 0x001F
DMI type 19, 15 bytes.
Memory Array Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0000FFFFFFF
Range Size: 256 MB
Physical Array Handle: 0x001B
Partition Width: 0
Handle 0x0020
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000000003FF
Range Size: 1 kB
Physical Device Handle: 0x001C
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0021
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x0000FFFFFFF
Range Size: 256 MB
Physical Device Handle: 0x001D
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0022
DMI type 20, 19 bytes.
Memory Device Mapped Address
Starting Address: 0x00000000000
Ending Address: 0x000000003FF
Range Size: 1 kB
Physical Device Handle: 0x001E
Memory Array Mapped Address Handle: 0x001F
Partition Row Position: 1
Handle 0x0023
DMI type 32, 11 bytes.
System Boot Information
Status: No errors detected
Handle 0x0024
DMI type 127, 4 bytes.
End Of Table
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-22 16:39 ` Jesse Allen
@ 2004-04-22 17:21 ` Len Brown
2004-04-22 21:29 ` Len Brown
2004-04-26 11:41 ` Ross Dickson
0 siblings, 2 replies; 73+ messages in thread
From: Len Brown @ 2004-04-22 17:21 UTC (permalink / raw)
To: Jesse Allen
Cc: Prakash K. Cheemplavam, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
On Thu, 2004-04-22 at 12:39, Jesse Allen wrote:
> On the Shuttle AN35N, the C1 disconnect option default is auto. If you're
> talking about this board, or another board Shuttle seemingly fixed, then I
> can tell you that I haven't been able to get my to hang with vanilla kernels.
Have you been able to hang the AN35N under any conditions?
Old BIOS, non-vanilla kernel?
> As for your patch, I get a fast timer, and gain about 1 sec per 5 minutes.
> The only patch that seemed to work without a fast timer so far was the one
> removed by Linus in a testing version. The AN35N has the timer override
> bug.
Hmm, I didn't notice fast time on my FN41, i'll look for it.
I'm not familiar with the "one removed by Linux in a testing version",
perhaps you could point me to that?
> Attached is the dmidecode for the AN35N.
applied.
thanks,
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-22 15:03 ` Len Brown
@ 2004-04-22 20:50 ` Craig Bradney
0 siblings, 0 replies; 73+ messages in thread
From: Craig Bradney @ 2004-04-22 20:50 UTC (permalink / raw)
To: Len Brown
Cc: Prakash K. Cheemplavam, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 2943 bytes --]
On Thu, 2004-04-22 at 17:03, Len Brown wrote:
> On Thu, 2004-04-22 at 04:45, Craig Bradney wrote:
>
> > > 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).
> >
> >
> > Do we need any other patch? eg the idlec1halt patch? My Athlon still has
> > 2.6.3 on it.
>
> If you needed idlec1halt before, you still need it.
> This patch just addresses the XT-PIC timer issue.
>
> >
> > > 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.
> >
> > + { 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") }},
> >
> > my dmidecode output also shows (in the first BIOS information section):
> > Vendor: Phoenix Technologies, LTD
> > although the Manufacturer is ASUSTek Computer INC. form the Base Board
> > and System sections.
>
> Right, DMI has separate sections for System, Board, BIOS, and we're
> using two pieces from the BOARD and two pieces from the BIOS sections.
>
> > Not really sure about the code. If it matches on all of above then it
> > might not work. Ill try a new kernel later today and see the result.
>
> The workaround is triggered only if all the MATCH()'s above match.
> If it doesn't trigger, then either I munged it on copy out of dmidecode
> or you've got a different BIOS and we need a new dmidecode...
>
> > > 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.
> > >
> >
> > Yes, I just checked yesterday and there was nothing new.
[Have sent this email with attachments directly to Len, attachments are
just /proc/interrupts and dmegs output. If someone is interested, please
ask for them]
Hi Len
Please find attached /proc/interrupts and dmesg from 3 boots, 2 with new
kernel.
263 : gentoo-dev-sources-r1 2.6.3 kernel with Ross Dickson's idleC1halt
and IOAPIC patches.
265: gentoo-dev-sources-r1 2.6.5 kernel with Ross Dickson's idleC1halt
for 2.6.5 kernel only. Note in 265pi (/proc/interrupts):
0: 54821 XT-PIC timer
265-lb: gentoo-dev-sources-r1 2.6.5 kernel with Ross Dickson's
idleC1halt for 2.6.5 kernel and your patch for the interrupt.
Note in 265pi-lb (/proc/interrupts):
0: 51144 IO-APIC-edge timer
so.. looks good here. :) I was surprised to see this effect with no boot
kernel option though. Having read the code I see you set the value to 1
and therefore on. Seems fine to me.
regards
Craig
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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 12:18 ` Maciej W. Rozycki
2004-04-26 11:41 ` Ross Dickson
1 sibling, 2 replies; 73+ messages in thread
From: Len Brown @ 2004-04-22 21:29 UTC (permalink / raw)
To: Jesse Allen
Cc: Prakash K. Cheemplavam, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
On Thu, 2004-04-22 at 13:21, Len Brown wrote:
> > As for your patch, I get a fast timer, and gain about 1 sec per 5 minutes.
> > The only patch that seemed to work without a fast timer so far was the one
> > removed by Linus in a testing version. The AN35N has the timer override
> > bug.
>
> Hmm, I didn't notice fast time on my FN41, i'll look for it.
>
> I'm not familiar with the "one removed by Linux in a testing version",
> perhaps you could point me to that?
date seems to gain 9sec/hour on my Shuttle/SN41G2/FN41 when using IOAPIC
timer.
booted with "noapic" for XT-PIC timer, it stays locked
onto my wristwatch after an hour. If the workaround is disabled,
and XT-PIC timer is used, it matches the "noapic" behaviour -- no drift.
I can't explain it. I think it is a timer problem independent of the
IRQ routing.
-Len
ps. when i ran in XT-PIC mode there were lots of ERR's registered in
/proc/interrupts -- doesn't look healthy.
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
@ 2004-04-23 1:30 Jesse Allen
2004-05-07 4:47 ` Richard James
0 siblings, 1 reply; 73+ messages in thread
From: Jesse Allen @ 2004-04-23 1:30 UTC (permalink / raw)
To: linux-kernel
Len Brown wrote:
> Have you been able to hang the AN35N under any conditions?
> Old BIOS, non-vanilla kernel?
Yes, and I described that it will hang under the pre-Dec 5th BIOS in another
mail.
I still have images of the buggy BIOS, and the fixed one on my hard drive.
They are also available at ftp://ftp.shuttle.com/BIOS/an35_n/ as
an35s00j.bin (Oct 2003)
an35s00l.bin (Dec 5th 2003)
XT-PIC timer bug still remains in both versions.
> I'm not familiar with the "one removed by Linus in a testing version",
> perhaps you could point me to that?
I had forgot the name, and hadn't looked it up. But it is the 8259 timer ack
workaround. You can see the removal here:
http://linux.bkbits.net:8080/linux-2.5/cset@1.1608.99.1
Jesse
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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 12:18 ` Maciej W. Rozycki
1 sibling, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-23 8:48 UTC (permalink / raw)
To: Len Brown
Cc: Jesse Allen, Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
a.verweij, Allen Martin
Len Brown wrote:
> On Thu, 2004-04-22 at 13:21, Len Brown wrote:
>
>
>>>As for your patch, I get a fast timer, and gain about 1 sec per 5 minutes.
>>>The only patch that seemed to work without a fast timer so far was the one
>>>removed by Linus in a testing version. The AN35N has the timer override
>>>bug.
>>
>>Hmm, I didn't notice fast time on my FN41, i'll look for it.
>>
>>I'm not familiar with the "one removed by Linux in a testing version",
>>perhaps you could point me to that?
>
>
> date seems to gain 9sec/hour on my Shuttle/SN41G2/FN41 when using IOAPIC
> timer.
Do you get lock-ups wihtout the timer_ack/C1halt patch? If yes, this may
be the cause. I remember someone finding out that Ross' patch made the
timer actually slower which resulted in stable operation. Maciej found
out, not connecting the timer at all made it stabke as well. So is there
a possibility to sync both timers?
According to a recent post, builöding kernel with SMP makes it stable,
as well, but I haven't tested.
> booted with "noapic" for XT-PIC timer, it stays locked
> onto my wristwatch after an hour. If the workaround is disabled,
> and XT-PIC timer is used, it matches the "noapic" behaviour -- no drift.
>
> I can't explain it. I think it is a timer problem independent of the
> IRQ routing.
>
> -Len
>
> ps. when i ran in XT-PIC mode there were lots of ERR's registered in
> /proc/interrupts -- doesn't look healthy.
>
>
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
0 siblings, 2 replies; 73+ messages in thread
From: Arjen Verweij @ 2004-04-23 9:01 UTC (permalink / raw)
To: Prakash K. Cheemplavam
Cc: Len Brown, Jesse Allen, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, Allen Martin
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: TEXT/PLAIN; charset=X-UNKNOWN, Size: 1779 bytes --]
He even filed a bug report:
http://bugme.osdl.org/show_bug.cgi?id=2552
I don't have access to my box atm, but I will certainly be trying a
vanilla kernel built with SMP to see what's going on.
Regards,
Arjen
On Fri, 23 Apr 2004, Prakash K. Cheemplavam wrote:
> Len Brown wrote:
> > On Thu, 2004-04-22 at 13:21, Len Brown wrote:
> >
> >
> >>>As for your patch, I get a fast timer, and gain about 1 sec per 5 minutes.
> >>>The only patch that seemed to work without a fast timer so far was the one
> >>>removed by Linus in a testing version. The AN35N has the timer override
> >>>bug.
> >>
> >>Hmm, I didn't notice fast time on my FN41, i'll look for it.
> >>
> >>I'm not familiar with the "one removed by Linux in a testing version",
> >>perhaps you could point me to that?
> >
> >
> > date seems to gain 9sec/hour on my Shuttle/SN41G2/FN41 when using IOAPIC
> > timer.
>
> Do you get lock-ups wihtout the timer_ack/C1halt patch? If yes, this may
> be the cause. I remember someone finding out that Ross' patch made the
> timer actually slower which resulted in stable operation. Maciej found
> out, not connecting the timer at all made it stabke as well. So is there
> a possibility to sync both timers?
>
> According to a recent post, builöding kernel with SMP makes it stable,
> as well, but I haven't tested.
>
> > booted with "noapic" for XT-PIC timer, it stays locked
> > onto my wristwatch after an hour. If the workaround is disabled,
> > and XT-PIC timer is used, it matches the "noapic" behaviour -- no drift.
> >
> > I can't explain it. I think it is a timer problem independent of the
> > IRQ routing.
> >
> > -Len
> >
> > ps. when i ran in XT-PIC mode there were lots of ERR's registered in
> > /proc/interrupts -- doesn't look healthy.
> >
> >
> >
> >
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-23 9:01 ` Arjen Verweij
@ 2004-04-23 9:08 ` Prakash K. Cheemplavam
2004-04-23 9:11 ` Prakash K. Cheemplavam
1 sibling, 0 replies; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-23 9:08 UTC (permalink / raw)
To: a.verweij
Cc: Len Brown, Jesse Allen, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, Allen Martin
Arjen Verweij wrote:
> He even filed a bug report:
>
> http://bugme.osdl.org/show_bug.cgi?id=2552
>
> I don't have access to my box atm, but I will certainly be trying a
> vanilla kernel built with SMP to see what's going on.
Hmm, well, I just tried it with 2.6.6-rc2-mm1 and it did NOT succeed, ie
it locked up. Maybe I need to use the exact kernel version and
configuration to find out, what's going on.
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-23 9:01 ` Arjen Verweij
2004-04-23 9:08 ` Prakash K. Cheemplavam
@ 2004-04-23 9:11 ` Prakash K. Cheemplavam
1 sibling, 0 replies; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-23 9:11 UTC (permalink / raw)
To: a.verweij
Cc: Len Brown, Jesse Allen, Craig Bradney, ross, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, Allen Martin
Arjen Verweij wrote:
> He even filed a bug report:
>
> http://bugme.osdl.org/show_bug.cgi?id=2552
>
> I don't have access to my box atm, but I will certainly be trying a
> vanilla kernel built with SMP to see what's going on.
Ok, I read the bug report, so it ssems it will still lock-up from my
silicon image sata controller, but not from PATA internal ide. Well, I
only tried the sata, but I don't quite understand what makes the
difference...at least no go for me.
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-22 21:29 ` Len Brown
2004-04-23 8:48 ` Prakash K. Cheemplavam
@ 2004-04-23 12:18 ` Maciej W. Rozycki
1 sibling, 0 replies; 73+ messages in thread
From: Maciej W. Rozycki @ 2004-04-23 12:18 UTC (permalink / raw)
To: Len Brown
Cc: Jesse Allen, Prakash K. Cheemplavam, Craig Bradney, ross,
christian.kroener, linux-kernel, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
On Thu, 22 Apr 2004, Len Brown wrote:
> date seems to gain 9sec/hour on my Shuttle/SN41G2/FN41 when using IOAPIC
> timer.
>
> booted with "noapic" for XT-PIC timer, it stays locked
> onto my wristwatch after an hour. If the workaround is disabled,
> and XT-PIC timer is used, it matches the "noapic" behaviour -- no drift.
>
> I can't explain it. I think it is a timer problem independent of the
> IRQ routing.
>
> -Len
>
> ps. when i ran in XT-PIC mode there were lots of ERR's registered in
> /proc/interrupts -- doesn't look healthy.
It looks like a noise on the timer IRQ line causing spurious interrupt
edges. In the XT-PIC mode it gets ignored -- at the time the CPU issues
an ack, the request is already gone and the PIC signals a spurious
interrupt. In the APIC mode the interrupt is delivered as a regular one
as edge interrupt events are persistent for the APICs -- if a falling edge
happens before an interrupt is acked it's not assumed to be gone and is
delivered as a real one.
Another possibility is there's a bug in our APIC interrupt setup, leading
to the timer interrupt being enabled both in the APIC and in the PIC.
You can verify that by calling debug functions for dumping states of the
controllers from io_apic.c. They are print_IO_APIC(), print_local_APIC()
and print_PIC() -- you may call them from an ad-hoc written small module,
although the first one is (accidentally?) marked __init, so you'd have to
remove the mark first. You need to call all of them to get a complete
view.
Maciej
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-22 17:21 ` Len Brown
2004-04-22 21:29 ` Len Brown
@ 2004-04-26 11:41 ` Ross Dickson
2004-04-27 17:02 ` Arjen Verweij
2004-04-27 21:31 ` Prakash K. Cheemplavam
1 sibling, 2 replies; 73+ messages in thread
From: Ross Dickson @ 2004-04-26 11:41 UTC (permalink / raw)
To: Len Brown, Jesse Allen
Cc: Prakash K. Cheemplavam, Craig Bradney, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
On Friday 23 April 2004 03:21, Len Brown wrote:
> On Thu, 2004-04-22 at 12:39, Jesse Allen wrote:
>
> > On the Shuttle AN35N, the C1 disconnect option default is auto. If you're
> > talking about this board, or another board Shuttle seemingly fixed, then I
> > can tell you that I haven't been able to get my to hang with vanilla kernels.
>
> Have you been able to hang the AN35N under any conditions?
> Old BIOS, non-vanilla kernel?
>
> > As for your patch, I get a fast timer, and gain about 1 sec per 5 minutes.
> > The only patch that seemed to work without a fast timer so far was the one
> > removed by Linus in a testing version. The AN35N has the timer override
> > bug.
>
> Hmm, I didn't notice fast time on my FN41, i'll look for it.
>
> I'm not familiar with the "one removed by Linux in a testing version",
> perhaps you could point me to that?
This is Maciej's patch - latest posting of it that I have seen,
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/3174.html
His fix up of the 8259 ack issue (when used without routing 8254 pit into
io-apic INTIN0) successfully establishes a virtual wire mode input of the timer
which the nforce2 seems happy with albeit without being able to use
"nmi_debug=1"
It is that timer ack issue tied up with the integrated apic.
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/2143.html
This refers to when it was in the 2.6.3-rc1-mm1
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-02/2658.html
Regards
Ross.
>
> > Attached is the dmidecode for the AN35N.
>
> applied.
>
> thanks,
> -Len
>
>
>
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-26 11:41 ` 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 21:31 ` Prakash K. Cheemplavam
1 sibling, 2 replies; 73+ messages in thread
From: Arjen Verweij @ 2004-04-27 17:02 UTC (permalink / raw)
To: Ross Dickson
Cc: Len Brown, Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
Hello,
I'm sorry for the small interlude in this thread, but I just want to get
something clear.
Basically we have a problem that is all around, except for (some) Shuttle
boards. Noone really knows what's going on, or at least if they know they
are not vocal about it.
In comes Ross Dickson. He starts poking at the problem until he comes up
with two patches. Near the end of 2003, an NVIDIA engineer (Allen Martin)
states that he (or maybe NVIDIA as a whole?) has been unable to reproduce
this weird problem with hard locks, seemingly related to APIC and IO.
He can tell us there was a bug in a reference BIOS that NVIDIA sent out
into the world, but that it has been fixed in a follow-up. Somewhere at
the start of December, Shuttle updates its BIOS for the AN35. Jesse Allen
flashes the new BIOS into his board and for reasons unknown his hard lock
problem has vanished. The importance of the update of NVIDIA's reference
BIOS in relation to the Shuttle update of the BIOS for their product(s) is
unknown as well.
Meanwhile, Ross Dickson drops requests for support tickets at AMD and
NVIDIA. Until this day, no reply yet. Unaffected by the deafening silence
he keeps improving his patches which seem to work(tm).
Without Ross' hard labor one can avoid the hard locks by banning APIC
support from the kernel, or turn off the C1 disconnect feature in the
BIOS, which is misinterpreted by one ACPI developer as running the CPU
"out of spec."
Recently Len Brown, the ACPI Linux kernel maintainer and Intel employee -
can you spot the irony? - agrees to attempt to reproduce the problem.
After having his box run with cat /dev/hda > /dev/null for a night
straight no lockup has occured. The brand of his motherboard is Shuttle.
Did I mention irony...?
Although this topic is primarily about nforce2 chipsets, similar problems
have been reported with SiS chipsets for AMD cpus. Other chipsets capable
of having the CPU disconnect include VIA KT266(A), KT333 and KT400. For
linux a tool like athcool can set the bits for the disconnect and the HLT
instruction. It is unconfirmed that these chipsets suffer from the same
symptoms as nforce2 chipsets.
Does anyone have some input on how to tackle this problem? The only things
I can come up with is mailing all the motherboard manufacturers I can
think of, harass NVIDIA and/or AMD some more through proper channels (i.e.
file a "bug report", but I don't expect much from this, sorry Allen) or
buy Len the cheapest broken nforce2 board I can find at pricewatch.com and
have it shipped to his house :)
Best regards,
Arjen
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-27 17:02 ` Arjen Verweij
@ 2004-04-27 17:35 ` Ian Kumlien
2004-04-27 18:00 ` Len Brown
1 sibling, 0 replies; 73+ messages in thread
From: Ian Kumlien @ 2004-04-27 17:35 UTC (permalink / raw)
To: a.verweij
Cc: Ross Dickson, Len Brown, Jesse Allen, Prakash K. Cheemplavam,
Craig Bradney, christian.kroener, linux-kernel, Maciej W. Rozycki,
Jamie Lokier, Daniel Drake, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 4209 bytes --]
On Tue, 2004-04-27 at 19:02, Arjen Verweij wrote:
> Hello,
>
> I'm sorry for the small interlude in this thread, but I just want to get
> something clear.
Imho it was a nice summation of the situation and it might be welcome
for ppl that just started reading about this.
> Basically we have a problem that is all around, except for (some) Shuttle
> boards. Noone really knows what's going on, or at least if they know they
> are not vocal about it.
Yep, and asus seems to only add support for new ram manuf in dual ddr
mode.
> In comes Ross Dickson. He starts poking at the problem until he comes up
> with two patches. Near the end of 2003, an NVIDIA engineer (Allen Martin)
> states that he (or maybe NVIDIA as a whole?) has been unable to reproduce
> this weird problem with hard locks, seemingly related to APIC and IO.
> He can tell us there was a bug in a reference BIOS that NVIDIA sent out
> into the world, but that it has been fixed in a follow-up. Somewhere at
> the start of December, Shuttle updates its BIOS for the AN35. Jesse Allen
> flashes the new BIOS into his board and for reasons unknown his hard lock
> problem has vanished. The importance of the update of NVIDIA's reference
> BIOS in relation to the Shuttle update of the BIOS for their product(s) is
> unknown as well.
> Meanwhile, Ross Dickson drops requests for support tickets at AMD and
> NVIDIA. Until this day, no reply yet. Unaffected by the deafening silence
> he keeps improving his patches which seem to work(tm).
Yep, and we are all great full for that =), thanks Ross.
> Without Ross' hard labor one can avoid the hard locks by banning APIC
> support from the kernel, or turn off the C1 disconnect feature in the
> BIOS, which is misinterpreted by one ACPI developer as running the CPU
> "out of spec."
Well, it gets hot... like hell.
> Recently Len Brown, the ACPI Linux kernel maintainer and Intel employee -
> can you spot the irony? - agrees to attempt to reproduce the problem.
> After having his box run with cat /dev/hda > /dev/null for a night
> straight no lockup has occured. The brand of his motherboard is Shuttle.
> Did I mention irony...?
Heh.
> Although this topic is primarily about nforce2 chipsets, similar problems
> have been reported with SiS chipsets for AMD cpus. Other chipsets capable
> of having the CPU disconnect include VIA KT266(A), KT333 and KT400. For
> linux a tool like athcool can set the bits for the disconnect and the HLT
> instruction. It is unconfirmed that these chipsets suffer from the same
> symptoms as nforce2 chipsets.
There are several other things that can nuke machines though.
A friend has problem with dma on a intel chipset (i keep monitoring the
changelogs for fixes) but he has problems getting a > 20 says uptime.
(crashes faster with dma enabled)
My firewall, a VIA Samuel 2 (microitx) dies after a few hours if you
enable cpu freq. But it also seems like it changes cpu speed to often.
The common denominator with my fw and my desktop is 'to often'. Which
leads me to suspect that the Hz change from 100 -> 1000 could be
somewhat responsible. Could it be that we just run it to often and thus
worsen the impact? And C1 disconnect shouldn't be run that often imho.
Neither should cpu freq.
Perhaps some throttling would have about the same affect as Ross patches
(which is what his original patches did, but not to the C1 disconnect or
the HLT instruction. Could it be that some kernel code isn't well
adapted to the 100 -> 1000 change?)
Anyways, that my 0.2 eur
> Does anyone have some input on how to tackle this problem? The only things
> I can come up with is mailing all the motherboard manufacturers I can
> think of, harass NVIDIA and/or AMD some more through proper channels (i.e.
> file a "bug report", but I don't expect much from this, sorry Allen) or
> buy Len the cheapest broken nforce2 board I can find at pricewatch.com and
> have it shipped to his house :)
Heh, that would be fun if he's willing to do the work/research =).
PS. CC, since i'm not on this list.
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
` (2 more replies)
1 sibling, 3 replies; 73+ messages in thread
From: Len Brown @ 2004-04-27 18:00 UTC (permalink / raw)
To: a.verweij
Cc: Ross Dickson, Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Tue, 2004-04-27 at 13:02, Arjen Verweij wrote:
> After having his box run with cat /dev/hda > /dev/null for a night
> straight no lockup has occured. The brand of his motherboard is Shuttle.
My shuttle is a FN41 board in a SN41G2 system.
I found "rev 1.0" BIOS (FN41S00X of 12/18/2002) on Shuttle's ftp site
and downgraded to that, but still no hang.
It may be this board never hangs no matter what,
or perhaps C1 disconnect was simply disabled in that BIOS
b/c there was no option for it in Advanced Chipset Features
like there is for the most recent BIOS.
Other things about my board.
I run "optimized defaults", I don't overclock anything.
Processor is an AMD XP 2200+
Does anybody else see the hang with this processor model?
I wonder if the hang is processor model or speed dependent?
> Does anyone have some input on how to tackle this problem?
Unfortunately I don't have tools for debugging nvidia + amd hardware.
I would expect that those companies do, however. So encouraging them
to reproduce the hang internally may be the best way to go.
> buy Len the cheapest broken nforce2 board I can find at pricewatch.com and
> have it shipped to his house :)
I got tangled in this b/c this board (actually, the reference BIOS for
this chipset) had some unusual ACPI related failures. If the failures
turn out to be related to ACPI, I'll do what I can to help. But I
expect that hardware debugging tools may be necessary before the
hang issue is completely explained and solved.
-Len
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
2 siblings, 0 replies; 73+ messages in thread
From: Arjen Verweij @ 2004-04-27 18:24 UTC (permalink / raw)
To: Len Brown
Cc: Ross Dickson, Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
Len,
I don't think that the CPU model has much to do with anything, it is
pretty much chipset related. My last remark about buying you a mobo for
debugging purposes was a vain attempt at humor.
I'm just surprised of the lack of support the vendors and NVIDIA/AMD are
giving. I realise that Linux may be only a marginal part of the market for
those companies so it is not commercially justifiable to invest a lot of
time in this.
We all appreciate whatever input you may have, because a solution without
indepth knowledge of how ACPI/APIC code handles stuff is probably needed
to tackle this issue.
All I can do is gather info, and I'm currently thinking of a plan to get
the info we need.
Regards,
Arjen
On 27 Apr 2004, Len Brown wrote:
> On Tue, 2004-04-27 at 13:02, Arjen Verweij wrote:
>
> > After having his box run with cat /dev/hda > /dev/null for a night
> > straight no lockup has occured. The brand of his motherboard is Shuttle.
>
> My shuttle is a FN41 board in a SN41G2 system.
>
> I found "rev 1.0" BIOS (FN41S00X of 12/18/2002) on Shuttle's ftp site
> and downgraded to that, but still no hang.
>
> It may be this board never hangs no matter what,
> or perhaps C1 disconnect was simply disabled in that BIOS
> b/c there was no option for it in Advanced Chipset Features
> like there is for the most recent BIOS.
>
> Other things about my board.
> I run "optimized defaults", I don't overclock anything.
> Processor is an AMD XP 2200+
> Does anybody else see the hang with this processor model?
> I wonder if the hang is processor model or speed dependent?
>
> > Does anyone have some input on how to tackle this problem?
>
> Unfortunately I don't have tools for debugging nvidia + amd hardware.
> I would expect that those companies do, however. So encouraging them
> to reproduce the hang internally may be the best way to go.
>
> > buy Len the cheapest broken nforce2 board I can find at pricewatch.com and
> > have it shipped to his house :)
>
> I got tangled in this b/c this board (actually, the reference BIOS for
> this chipset) had some unusual ACPI related failures. If the failures
> turn out to be related to ACPI, I'll do what I can to help. But I
> expect that hardware debugging tools may be necessary before the
> hang issue is completely explained and solved.
>
> -Len
>
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
2 siblings, 0 replies; 73+ messages in thread
From: Jussi Laako @ 2004-04-27 18:51 UTC (permalink / raw)
To: linux-kernel
On Tue, 2004-04-27 at 21:00, Len Brown wrote:
> I run "optimized defaults", I don't overclock anything.
> Processor is an AMD XP 2200+
> Does anybody else see the hang with this processor model?
> I wonder if the hang is processor model or speed dependent?
Have people run memtest86 over weekend without errors?
I found nForce2 (newer ones, rev2? A7N8X rev 2 and K7N2 Delta) to be
veery picky to DDR400 RAMs. I was able to find 2 properly working memory
modules out of 6. Also tested with several different brands. However
A7N8X rev 1 runs fine without need for carefully picking memory modules.
Memory test may need to be run over 48 hours to detect errors. But the
time required may be lower when running Linux kernel.
--
Jussi Laako <jussi@sonarnerd.net>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-26 11:41 ` Ross Dickson
2004-04-27 17:02 ` Arjen Verweij
@ 2004-04-27 21:31 ` Prakash K. Cheemplavam
2004-04-28 11:26 ` Prakash K. Cheemplavam
1 sibling, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-27 21:31 UTC (permalink / raw)
To: ross
Cc: Len Brown, Jesse Allen, Craig Bradney, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
Hi all,
I have just made soem interesting experience. It seems Len's timer
routing patch (or whatever you wanna call it) stabilizes my system to a
certain amount or NOT using AGP stabilizes it to an amount...
The whole story: I am using Ross' C1halt patch to make the system stable
in APIC mode, but due to a recent change I borked my kernel parameters
and just had idle=halt instead of idle=C1halt as parameter, thus I had
not activated Ross patch by accident. Nevertheless, the system survived
a whole day! Usually it locks up within minutes, but this time no. I
even did yome heavy copying from DVD to HD and from one HD to another
with peaks of about 40mb/s. Finally the system crashed when I recorded
from dvb to hd (but only after 20minutes). Then after a reboot (still
NOT using Ross' patch) it survived dvb recording for about 30min.
I only manage to instantly lock the system when doing a hdparm (rather a
second hdparm, the first one gives just about 20mb/sec, hello Jeff? What
is libata doing here?) which goes up to >60mb/sec.
So Len, maybe try using a faster hd to crash your shuttle if it is one
of the borked bioses...
As I used the open source NV driver all the time, AGP probably wasn't in
use (or someone tell me how to use AGP with nv driver...), as ususally
without Ross' patches using AGP I get fast lock-ups or as stated above
Len's patch makes it a bit better. In fact I would need to try Len's
patch and AGP on (with nvidia binary) to find out whether agp or Len's
patch makes the difference. But currently I am too tired and not in the
mood to further patch current mm-kernel to get Nvidia's binary running
again...
Does anybody know a tool to generate certain amount of traffic on PCI
bus? So I could test at which point the system wants to lock-up now.
Only idea I have right now is to put an older hd into the system an test.
bye,
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-27 21:31 ` Prakash K. Cheemplavam
@ 2004-04-28 11:26 ` Prakash K. Cheemplavam
0 siblings, 0 replies; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-28 11:26 UTC (permalink / raw)
Cc: ross, Len Brown, Jesse Allen, Craig Bradney, christian.kroener,
linux-kernel, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien, a.verweij, Allen Martin
Prakash K. Cheemplavam wrote:
> Hi all,
>
> I have just made soem interesting experience. It seems Len's timer
> routing patch (or whatever you wanna call it) stabilizes my system to a
> certain amount or NOT using AGP stabilizes it to an amount...
[snip]
Btw, I found another possible reason for this behaviour, which would fit
into the idle temp problem I am experiencing again with 2.6.6-rc2-mm1
kernel (unless it seems I use Ross C1halt idle patch): Perhaps this
kernel uses the disconnect feature less often, so the probality of
lock-up goes down. That would explain my higher temps...
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
2 siblings, 1 reply; 73+ messages in thread
From: Ross Dickson @ 2004-04-28 11:33 UTC (permalink / raw)
To: Len Brown, a.verweij
Cc: Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Wednesday 28 April 2004 04:00, Len Brown wrote:
> On Tue, 2004-04-27 at 13:02, Arjen Verweij wrote:
>
> > After having his box run with cat /dev/hda > /dev/null for a night
> > straight no lockup has occured. The brand of his motherboard is Shuttle.
>
> My shuttle is a FN41 board in a SN41G2 system.
>
I have had 3 Albatron KM18G pro and one Epox8rga+.
> I found "rev 1.0" BIOS (FN41S00X of 12/18/2002) on Shuttle's ftp site
> and downgraded to that, but still no hang.
My Albatrons hang with bios R1.01, R1.01a, R1.04 which is latest, probably also
hang with earlier bios but have not tried. I have emailed Albatron in last couple
of weeks re Allen's comments on Nvidia reference bios and about lockups but
have had no response as yet.
My Epox hangs but does not have latest bios - don't have floppy hooked up in
that box to flash it to latest bios as yet.
>
> It may be this board never hangs no matter what,
> or perhaps C1 disconnect was simply disabled in that BIOS
> b/c there was no option for it in Advanced Chipset Features
> like there is for the most recent BIOS.
Maybe other MOBO manufacturers skimp on filter caps and regulator damping
ability and a resonance occurs in the on-board supply rails? Do Shuttle make
any claims to using an improved on board regulator? Or Shuttle may have
always programmed more time in C1 cycle handshakes if such is
configurable?
>
> Other things about my board.
> I run "optimized defaults", I don't overclock anything.
> Processor is an AMD XP 2200+
> Does anybody else see the hang with this processor model?
> I wonder if the hang is processor model or speed dependent?
I have tried XP2200, XP2400, XP2500, I know I get lockups with both t'bred
and barton cores. Epox mobo has been tried with both Aopen H-500A and
Elanvital full size case and power supplies. My albatron are all in Aopen m-atx
H-400A cases.
>
> > Does anyone have some input on how to tackle this problem?
>
> Unfortunately I don't have tools for debugging nvidia + amd hardware.
> I would expect that those companies do, however. So encouraging them
> to reproduce the hang internally may be the best way to go.
Ditto I figured out early on it could do with emulator or bond out cpu/chipset
and tried to draw in Nvidia and AMD starting in December last year.
http://linux.derkeiler.com/Mailing-Lists/Kernel/2003-12/2549.html
It was cc'd to Mr Allen Martin of Nvidia as were other emails on topic.
His reply was "\0" so I assumed he was on a long holiday or no longer worked
there. It has been good to hear from him on the topic some 4 months later.
Don't scare him off! -we appear to be making some progress.
I also spoke to Mr Michael Apthorpe of AMD in Australia in December and
forwarded the support request email who replied "Thanks Ross I will forwards
it on and see what comes back." But nothing has to date.
In January I spotted Mr Richard Brunner of AMD had previously corresponded
with the LKML so I emailed him and he was interested at the time but said
whilst he could not promise anything he would forward my query to the hardware
certification labs. And guess what - he was right to promise nothing as I have
received "\0" to date.
I followed up with the AMD guys in February this year but again received "\0".
>
> > buy Len the cheapest broken nforce2 board I can find at pricewatch.com and
> > have it shipped to his house :)
>
> I got tangled in this b/c this board (actually, the reference BIOS for
> this chipset) had some unusual ACPI related failures. If the failures
> turn out to be related to ACPI, I'll do what I can to help. But I
> expect that hardware debugging tools may be necessary before the
> hang issue is completely explained and solved.
I have had good (100%) success in reproducing the fault with the Albatron
KM18G pro MOBO. I needed m-atx form factor and distributor was local to me.
Makes very nice - cheap and stable system but only with the lockup workaround.
I also recollect that Windows had lockups with nforce2 for a while depending
whether you ran the Nvidia or Microsoft driver.
http://lkml.org/lkml/2003/12/13/5
Anybody got the inside running on that one and what was different between the
two drivers?
Regards
Ross.
>
> -Len
>
>
>
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-28 11:33 ` Ross Dickson
@ 2004-04-28 20:59 ` Jesse Allen
2004-04-29 11:44 ` Ross Dickson
0 siblings, 1 reply; 73+ messages in thread
From: Jesse Allen @ 2004-04-28 20:59 UTC (permalink / raw)
To: Ross Dickson
Cc: Len Brown, a.verweij, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Wed, Apr 28, 2004 at 09:33:34PM +1000, Ross Dickson wrote:
> >
> > It may be this board never hangs no matter what,
> > or perhaps C1 disconnect was simply disabled in that BIOS
> > b/c there was no option for it in Advanced Chipset Features
> > like there is for the most recent BIOS.
>
> Maybe other MOBO manufacturers skimp on filter caps and regulator damping
> ability and a resonance occurs in the on-board supply rails? Do Shuttle make
> any claims to using an improved on board regulator? Or Shuttle may have
> always programmed more time in C1 cycle handshakes if such is
> configurable?
Do you really think so? I think there may be a resonance occuring, even with
this new BIOS. I plugged in new headphones into my nforce2 onboard sound, and
get a high pitched noise. Now here is where it gets weird: This noise does
not occur on boot until sometime after the IDE driver is loaded. I also
believe it varies under a high load. If you disable C1 disconnect, it's gone.
Also I've heard a high pitched noise at certain times coming right from the
copmuter (very faint, but I do have very good hearing, I can even hear a hush
sounding from my router. my brother was quite astonished when I pointed that
out) I try to distinguish whats doing it. It could be the hard drive. But
when I found the other sound in the head phones, I found that the sound varies
almost in unison with the sound coming from the computer. Maybe the IDE or
hard drive is related, but it is too much related to C1 disconnect.
Whether it is really possible that my board can really generate this sound, I
don't know. Though, I have once determined that resonance was occuring in an
old system, causing unstable CPU operation. It wasn't that I heard a sound
coming from it =). But what I thought was the case was causing it, and pulled
it out of the case. I ran it on the table and found it to be stable. That
was the only thing wrong. I've also studied resonance before a bit. I know
resonance can break systems. But to think that my board is doing emmitting
noise like that is pretty bizarre.
It may be true that this Shuttle board may have resonance problems. So that
would indicate that they did something much like you describe by changing the
C1 handshake time? Isn't that much like what your patch does?
>
> > hang issue is completely explained and solved.
>
> I have had good (100%) success in reproducing the fault with the Albatron
> KM18G pro MOBO. I needed m-atx form factor and distributor was local to me.
> Makes very nice - cheap and stable system but only with the lockup workaround.
>
> I also recollect that Windows had lockups with nforce2 for a while depending
> whether you ran the Nvidia or Microsoft driver.
> http://lkml.org/lkml/2003/12/13/5
> Anybody got the inside running on that one and what was different between the
> two drivers?
>
Yeah, unfortunately, I didn't save a link to the message board that I found
that on. But the issue is pretty common. I'm sure more info can be found on i
the windows side.
Jesse
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-28 20:59 ` Jesse Allen
@ 2004-04-29 11:44 ` Ross Dickson
2004-04-29 11:54 ` Maciej W. Rozycki
` (3 more replies)
0 siblings, 4 replies; 73+ messages in thread
From: Ross Dickson @ 2004-04-29 11:44 UTC (permalink / raw)
To: Jesse Allen
Cc: Len Brown, a.verweij, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Thursday 29 April 2004 06:59, Jesse Allen wrote:
> On Wed, Apr 28, 2004 at 09:33:34PM +1000, Ross Dickson wrote:
> > >
> > > It may be this board never hangs no matter what,
> > > or perhaps C1 disconnect was simply disabled in that BIOS
> > > b/c there was no option for it in Advanced Chipset Features
> > > like there is for the most recent BIOS.
> >
> > Maybe other MOBO manufacturers skimp on filter caps and regulator damping
> > ability and a resonance occurs in the on-board supply rails? Do Shuttle make
> > any claims to using an improved on board regulator? Or Shuttle may have
> > always programmed more time in C1 cycle handshakes if such is
> > configurable?
>
> Do you really think so? I think there may be a resonance occuring, even with
> this new BIOS. I plugged in new headphones into my nforce2 onboard sound, and
> get a high pitched noise. Now here is where it gets weird: This noise does
> not occur on boot until sometime after the IDE driver is loaded. I also
> believe it varies under a high load. If you disable C1 disconnect, it's gone.
> Also I've heard a high pitched noise at certain times coming right from the
> copmuter (very faint, but I do have very good hearing, I can even hear a hush
> sounding from my router. my brother was quite astonished when I pointed that
> out) I try to distinguish whats doing it. It could be the hard drive. But
> when I found the other sound in the head phones, I found that the sound varies
> almost in unison with the sound coming from the computer. Maybe the IDE or
> hard drive is related, but it is too much related to C1 disconnect.
I think I might break out my oscilloscope this weekend and have a look at how
clean the supply rails are around the cpu and northbridge and southbridge.
Who knows I might get lucky and see some unexpected ripple or spikes.
>
> Whether it is really possible that my board can really generate this sound, I
> don't know. Though, I have once determined that resonance was occuring in an
> old system, causing unstable CPU operation. It wasn't that I heard a sound
> coming from it =). But what I thought was the case was causing it, and pulled
> it out of the case. I ran it on the table and found it to be stable. That
> was the only thing wrong. I've also studied resonance before a bit. I know
> resonance can break systems. But to think that my board is doing emmitting
> noise like that is pretty bizarre.
Not as bizarre as you may think. I have heard coils and even capacitors "sing"
in years past whilst servicing electronics.
>
> It may be true that this Shuttle board may have resonance problems. So that
> would indicate that they did something much like you describe by changing the
> C1 handshake time? Isn't that much like what your patch does?
I had not really thought about it from that perspective. Whilst my patch cannot
alter the handshake times it does prevent consecutive C1 cycles from occurring
too close together. Too close together I think being less than about 800ns. I
guess I could look at that with a cro too - use an appropriate pin as the trigger
source and see if supply rails have load dump voltage rises when going into
disconnect. Maybe rail voltage rings for about 700ns and might be out of
tolerence inside Athlon during that time. Would be very interesting if a
few hundred picofarad of low esr decoupling cap placed on a supply rail near a
chip makes a difference? A pinout of the nforce2 chipset would help a great deal
here but I do not have one. Can anyone oblige me?
>
>
> >
> > > hang issue is completely explained and solved.
> >
> > I have had good (100%) success in reproducing the fault with the Albatron
> > KM18G pro MOBO. I needed m-atx form factor and distributor was local to me.
> > Makes very nice - cheap and stable system but only with the lockup workaround.
> >
> > I also recollect that Windows had lockups with nforce2 for a while depending
> > whether you ran the Nvidia or Microsoft driver.
> > http://lkml.org/lkml/2003/12/13/5
> > Anybody got the inside running on that one and what was different between the
> > two drivers?
> >
>
> Yeah, unfortunately, I didn't save a link to the message board that I found
> that on. But the issue is pretty common. I'm sure more info can be found on i
> the windows side.
No tech info but this link shows user had Lockups with Nvidia's ide driver but
OK with MS one.
http://club.cdfreaks.com/showthread/t-91381.html
-Ross
>
> Jesse
>
>
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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 11:57 ` Jamie Lokier
` (2 subsequent siblings)
3 siblings, 1 reply; 73+ messages in thread
From: Maciej W. Rozycki @ 2004-04-29 11:54 UTC (permalink / raw)
To: Ross Dickson
Cc: Jesse Allen, Len Brown, a.verweij, Prakash K. Cheemplavam,
Craig Bradney, christian.kroener, linux-kernel, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Thu, 29 Apr 2004, Ross Dickson wrote:
> > Do you really think so? I think there may be a resonance occuring, even with
> > this new BIOS. I plugged in new headphones into my nforce2 onboard sound, and
> > get a high pitched noise. Now here is where it gets weird: This noise does
> > not occur on boot until sometime after the IDE driver is loaded. I also
> > believe it varies under a high load. If you disable C1 disconnect, it's gone.
> > Also I've heard a high pitched noise at certain times coming right from the
> > copmuter (very faint, but I do have very good hearing, I can even hear a hush
> > sounding from my router. my brother was quite astonished when I pointed that
> > out) I try to distinguish whats doing it. It could be the hard drive. But
> > when I found the other sound in the head phones, I found that the sound varies
> > almost in unison with the sound coming from the computer. Maybe the IDE or
> > hard drive is related, but it is too much related to C1 disconnect.
>
> I think I might break out my oscilloscope this weekend and have a look at how
> clean the supply rails are around the cpu and northbridge and southbridge.
> Who knows I might get lucky and see some unexpected ripple or spikes.
Not necessarily related to the PSU, but the noise may actually be the
reason of spurious timer interrupts.
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 11:44 ` Ross Dickson
2004-04-29 11:54 ` Maciej W. Rozycki
@ 2004-04-29 11:57 ` Jamie Lokier
2004-04-29 12:16 ` Craig Bradney
2004-04-29 20:24 ` Jesse Allen
3 siblings, 0 replies; 73+ messages in thread
From: Jamie Lokier @ 2004-04-29 11:57 UTC (permalink / raw)
To: Ross Dickson
Cc: Jesse Allen, Len Brown, a.verweij, Prakash K. Cheemplavam,
Craig Bradney, christian.kroener, linux-kernel, Maciej W. Rozycki,
Daniel Drake, Ian Kumlien, Allen Martin
Ross Dickson wrote:
> Not as bizarre as you may think. I have heard coils and even capacitors "sing"
> in years past whilst servicing electronics.
See the thread "Increasing HZ (patch for HZ > 1000)" for something
along these lines. The change of HZ from 100 to 1000 causes some
notebooks to make a noise.
(Mine makes a noise with both, though).
-- Jamie
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 11:54 ` Maciej W. Rozycki
@ 2004-04-29 12:00 ` Jamie Lokier
2004-04-29 12:26 ` Maciej W. Rozycki
0 siblings, 1 reply; 73+ messages in thread
From: Jamie Lokier @ 2004-04-29 12:00 UTC (permalink / raw)
To: Maciej W. Rozycki
Cc: Ross Dickson, Jesse Allen, Len Brown, a.verweij,
Prakash K. Cheemplavam, Craig Bradney, christian.kroener,
linux-kernel, Daniel Drake, Ian Kumlien, Allen Martin
Maciej W. Rozycki wrote:
> Not necessarily related to the PSU, but the noise may actually be the
> reason of spurious timer interrupts.
With most device interrupts, additional spurious ones don't cause any
malfunction because the driver's handler checks whether the device
actually has a condition pending.
This is the basis of shared interrupts, of course.
Is there any way we can check the timer itself to see whether an
interrupt was caused by it, so that spurious timer interrupts are ignored?
-- Jamie
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 11:44 ` Ross Dickson
2004-04-29 11:54 ` Maciej W. Rozycki
2004-04-29 11:57 ` Jamie Lokier
@ 2004-04-29 12:16 ` Craig Bradney
2004-04-29 20:24 ` Jesse Allen
3 siblings, 0 replies; 73+ messages in thread
From: Craig Bradney @ 2004-04-29 12:16 UTC (permalink / raw)
To: ross
Cc: Jesse Allen, Len Brown, a.verweij, Prakash K. Cheemplavam,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 5223 bytes --]
On Thu, 2004-04-29 at 13:44, Ross Dickson wrote:
> On Thursday 29 April 2004 06:59, Jesse Allen wrote:
> > On Wed, Apr 28, 2004 at 09:33:34PM +1000, Ross Dickson wrote:
> > > >
> > > > It may be this board never hangs no matter what,
> > > > or perhaps C1 disconnect was simply disabled in that BIOS
> > > > b/c there was no option for it in Advanced Chipset Features
> > > > like there is for the most recent BIOS.
> > >
> > > Maybe other MOBO manufacturers skimp on filter caps and regulator damping
> > > ability and a resonance occurs in the on-board supply rails? Do Shuttle make
> > > any claims to using an improved on board regulator? Or Shuttle may have
> > > always programmed more time in C1 cycle handshakes if such is
> > > configurable?
> >
> > Do you really think so? I think there may be a resonance occuring, even with
> > this new BIOS. I plugged in new headphones into my nforce2 onboard sound, and
> > get a high pitched noise. Now here is where it gets weird: This noise does
> > not occur on boot until sometime after the IDE driver is loaded. I also
> > believe it varies under a high load. If you disable C1 disconnect, it's gone.
> > Also I've heard a high pitched noise at certain times coming right from the
> > copmuter (very faint, but I do have very good hearing, I can even hear a hush
> > sounding from my router. my brother was quite astonished when I pointed that
> > out) I try to distinguish whats doing it. It could be the hard drive. But
> > when I found the other sound in the head phones, I found that the sound varies
> > almost in unison with the sound coming from the computer. Maybe the IDE or
> > hard drive is related, but it is too much related to C1 disconnect.
>
> I think I might break out my oscilloscope this weekend and have a look at how
> clean the supply rails are around the cpu and northbridge and southbridge.
> Who knows I might get lucky and see some unexpected ripple or spikes.
>
> >
> > Whether it is really possible that my board can really generate this sound, I
> > don't know. Though, I have once determined that resonance was occuring in an
> > old system, causing unstable CPU operation. It wasn't that I heard a sound
> > coming from it =). But what I thought was the case was causing it, and pulled
> > it out of the case. I ran it on the table and found it to be stable. That
> > was the only thing wrong. I've also studied resonance before a bit. I know
> > resonance can break systems. But to think that my board is doing emmitting
> > noise like that is pretty bizarre.
>
> Not as bizarre as you may think. I have heard coils and even capacitors "sing"
> in years past whilst servicing electronics.
>
> >
> > It may be true that this Shuttle board may have resonance problems. So that
> > would indicate that they did something much like you describe by changing the
> > C1 handshake time? Isn't that much like what your patch does?
>
> I had not really thought about it from that perspective. Whilst my patch cannot
> alter the handshake times it does prevent consecutive C1 cycles from occurring
> too close together. Too close together I think being less than about 800ns. I
> guess I could look at that with a cro too - use an appropriate pin as the trigger
> source and see if supply rails have load dump voltage rises when going into
> disconnect. Maybe rail voltage rings for about 700ns and might be out of
> tolerence inside Athlon during that time. Would be very interesting if a
> few hundred picofarad of low esr decoupling cap placed on a supply rail near a
> chip makes a difference? A pinout of the nforce2 chipset would help a great deal
> here but I do not have one. Can anyone oblige me?
>
> >
> >
> > >
> > > > hang issue is completely explained and solved.
> > >
> > > I have had good (100%) success in reproducing the fault with the Albatron
> > > KM18G pro MOBO. I needed m-atx form factor and distributor was local to me.
> > > Makes very nice - cheap and stable system but only with the lockup workaround.
> > >
> > > I also recollect that Windows had lockups with nforce2 for a while depending
> > > whether you ran the Nvidia or Microsoft driver.
> > > http://lkml.org/lkml/2003/12/13/5
> > > Anybody got the inside running on that one and what was different between the
> > > two drivers?
> > >
> >
> > Yeah, unfortunately, I didn't save a link to the message board that I found
> > that on. But the issue is pretty common. I'm sure more info can be found on i
> > the windows side.
>
> No tech info but this link shows user had Lockups with Nvidia's ide driver but
> OK with MS one.
> http://club.cdfreaks.com/showthread/t-91381.html
>
> -
This has become a rather interesting problem to watch from afar. The
Athlon here seems to have no issues with the NForce driver under Windows
(I dont burn a lot of DVDs on it tho). Whenever its in Linux, its mainly
a testing machine these days.
It will be interesting to see if theres a real hardware problem and then
if it can be worked around in software (cant image a single product
recall happening).
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 12:00 ` Jamie Lokier
@ 2004-04-29 12:26 ` Maciej W. Rozycki
0 siblings, 0 replies; 73+ messages in thread
From: Maciej W. Rozycki @ 2004-04-29 12:26 UTC (permalink / raw)
To: Jamie Lokier
Cc: Ross Dickson, Jesse Allen, Len Brown, a.verweij,
Prakash K. Cheemplavam, Craig Bradney, christian.kroener,
linux-kernel, Daniel Drake, Ian Kumlien, Allen Martin
On Thu, 29 Apr 2004, Jamie Lokier wrote:
> > Not necessarily related to the PSU, but the noise may actually be the
> > reason of spurious timer interrupts.
>
> With most device interrupts, additional spurious ones don't cause any
> malfunction because the driver's handler checks whether the device
> actually has a condition pending.
Note the 8254 timer uses edge-triggered interrupts and is just a square
wave signal. There's no acking to deassert the interrupt -- it goes away
spontaneously after a predefined time.
> This is the basis of shared interrupts, of course.
Yep, but the timer is non-shareable by definition.
> Is there any way we can check the timer itself to see whether an
> interrupt was caused by it, so that spurious timer interrupts are ignored?
This may be possible, but complicated and likely unreliable -- an I/O
APIC may deliver a spurious interrupt at the time a real one would be
probable and you can't check if a period between two consecutive timer
interrupts is appropriate without an additional time reference, which may
be unavailable (like the TSC).
Note the timer is special -- we don't really do any device handling, but
we want to get periodic interrupts at the right times to have a time
reference. Coalescing interrupts or discarding spurious ones, which is
normal and acceptable for regular devices, doesn't work here.
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 11:44 ` Ross Dickson
` (2 preceding siblings ...)
2004-04-29 12:16 ` Craig Bradney
@ 2004-04-29 20:24 ` Jesse Allen
2004-04-29 20:31 ` Prakash K. Cheemplavam
3 siblings, 1 reply; 73+ messages in thread
From: Jesse Allen @ 2004-04-29 20:24 UTC (permalink / raw)
To: Ross Dickson
Cc: Len Brown, a.verweij, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Thu, Apr 29, 2004 at 09:44:37PM +1000, Ross Dickson wrote:
> On Thursday 29 April 2004 06:59, Jesse Allen wrote:
> > almost in unison with the sound coming from the computer. Maybe the IDE or
> > hard drive is related, but it is too much related to C1 disconnect.
>
> I think I might break out my oscilloscope this weekend and have a look at how
> clean the supply rails are around the cpu and northbridge and southbridge.
> Who knows I might get lucky and see some unexpected ripple or spikes.
I'd be interested in knowing the results.
> > resonance can break systems. But to think that my board is doing emmitting
> > noise like that is pretty bizarre.
>
> Not as bizarre as you may think. I have heard coils and even capacitors "sing"
> in years past whilst servicing electronics.
Yes, I know that these things can theorectically happen. But when it happens
to me, it's a suprise. To an electronics genius, he probably encounters it
more often. =)
> > C1 handshake time? Isn't that much like what your patch does?
>
> I had not really thought about it from that perspective. Whilst my patch cannot
> alter the handshake times it does prevent consecutive C1 cycles from occurring
> too close together. Too close together I think being less than about 800ns. I
ah, ok.
> guess I could look at that with a cro too - use an appropriate pin as the
> trigger source and see if supply rails have load dump voltage rises when
> going into disconnect. Maybe rail voltage rings for about 700ns and might be
> out of tolerence inside Athlon during that time. Would be very interesting if
> a few hundred picofarad of low esr decoupling cap placed on a supply rail
> near a chip makes a difference? A pinout of the nforce2 chipset would help a
> great deal here but I do not have one. Can anyone oblige me?
What I'd like to know is where the sound chip is really at on my board. I've
tried looking before, but find myself confused.
A pic:
http://us.shuttle.com/images/productimages/AN35.jpg
According to a diagram that I have, it points to an AC'97 6-CH AUDIO as a chip
near of the top of the board in the image that I link to, above 2nd PCI slot
left of the AGP. But I'm am also left thinking, how does the NForce2 MCP come
into play. Specs would help. Maybe if we can figure out how the sound is
wired on the board, we could also trace the source of noise to the exact
component.
Jesse
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 20:24 ` Jesse Allen
@ 2004-04-29 20:31 ` Prakash K. Cheemplavam
2004-05-03 20:45 ` Jesse Allen
0 siblings, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-04-29 20:31 UTC (permalink / raw)
To: Jesse Allen
Cc: Ross Dickson, Len Brown, a.verweij, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
Jesse Allen wrote:
> What I'd like to know is where the sound chip is really at on my board. I've
> tried looking before, but find myself confused.
>
> A pic:
> http://us.shuttle.com/images/productimages/AN35.jpg
>
> According to a diagram that I have, it points to an AC'97 6-CH AUDIO as a chip
> near of the top of the board in the image that I link to, above 2nd PCI slot
> left of the AGP. But I'm am also left thinking, how does the NForce2 MCP come
> into play. Specs would help. Maybe if we can figure out how the sound is
> wired on the board, we could also trace the source of noise to the exact
> component.
Yes, I also think the chip above 2nd PCI slot is the right one. You can
see the realtek logo. It is only a ac97 codec (basically not more than a
DAC and ADC) and linux currently only has drivers for this. The MCP-T
has an APU, which could do dsp stuff by hardware, but no drivers still
(Hello Nvidia?), so all of this is done via software. (THe APU has even
more functionality, like DD5.1 realtime encoding, fx, and whatever). In
our case, the APU shouldn't cause any troubles, as it is not used. With
the APU, nforce2 chipset behaves like a "real" soundcard. Without, its
sound abilities are not better than the average mainboard's onboard sound.
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-21 22:41 ` Len Brown
` (3 preceding siblings ...)
2004-04-22 16:39 ` Jesse Allen
@ 2004-05-01 6:51 ` Prakash K. Cheemplavam
4 siblings, 0 replies; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-05-01 6:51 UTC (permalink / raw)
To: Len Brown
Cc: Craig Bradney, ross, christian.kroener, linux-kernel,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake, Ian Kumlien,
Jesse Allen, a.verweij, Allen Martin
Hi Len,
don't you want to change your wip.patch in such a way, that it always
activates on nforce2? Allen told that "The 8254 PIT is hardwared to IRQ0
on all nForce chipsets, it can't be routed.", which I guess is what you
needed to know. If this statement doesn't apply to the timer fix, here
dmidecode change of newest bios for Abit NF7-S v2: Just need to
change
MATCH(DMI_BIOS_DATE, "03/24/2004")
to
MATCH(DMI_BIOS_DATE, "04/22/2004")
Prakash
> + { 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") }},
> +
^ permalink raw reply [flat|nested] 73+ messages in thread
* RE: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
@ 2004-05-03 8:08 Allen Martin
0 siblings, 0 replies; 73+ messages in thread
From: Allen Martin @ 2004-05-03 8:08 UTC (permalink / raw)
To: ross, Len Brown, a.verweij
Cc: Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien
> I also recollect that Windows had lockups with nforce2 for a while
> depending
> whether you ran the Nvidia or Microsoft driver.
> http://lkml.org/lkml/2003/12/13/5
> Anybody got the inside running on that one and what was different
between
> the
> two drivers?
There were some ATAPI device detection problems in some of the earlier
Windows nForce IDE drivers that would cause lockups during boot for some
people depending on what type of devices were attached.
There's never been any reports of Windows hangs that have been root
caused to C1 disconnects that I'm aware of.
-Allen
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-04-29 20:31 ` Prakash K. Cheemplavam
@ 2004-05-03 20:45 ` Jesse Allen
2004-05-17 15:26 ` Prakash K. Cheemplavam
0 siblings, 1 reply; 73+ messages in thread
From: Jesse Allen @ 2004-05-03 20:45 UTC (permalink / raw)
To: Prakash K. Cheemplavam
Cc: Ross Dickson, Len Brown, a.verweij, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
On Thu, Apr 29, 2004 at 10:31:52PM +0200, Prakash K. Cheemplavam wrote:
> Jesse Allen wrote:
> >What I'd like to know is where the sound chip is really at on my board.
>
> Yes, I also think the chip above 2nd PCI slot is the right one. You can
> see the realtek logo. It is only a ac97 codec (basically not more than a
> DAC and ADC) and linux currently only has drivers for this. The MCP-T
> has an APU, which could do dsp stuff by hardware, but no drivers still
> (Hello Nvidia?), so all of this is done via software. (THe APU has even
> more functionality, like DD5.1 realtime encoding, fx, and whatever). In
> our case, the APU shouldn't cause any troubles, as it is not used. With
> the APU, nforce2 chipset behaves like a "real" soundcard. Without, its
> sound abilities are not better than the average mainboard's onboard sound.
>
> Prakash
>
Thanks. I've also got some one reporting to me of having the same problem
with the Asus A7N8X board. Also note, that I don't have the intel8x0 loaded
and it will still do it. I can even disable the onboard sound in BIOS and it
will _still_ have the sound on the speaker out. Want to know how the sound
varies? Try compiling a linux kernel. Between executing make processes the sound will vary alot (from nothing to the annoying pitch). The sound is quite
faint to probably be heard on speakers, but on headphones you probably will
hear it. To me, this is indicative of the C1 disconnects.
Jesse
^ permalink raw reply [flat|nested] 73+ messages in thread
* RE: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
@ 2004-05-03 22:09 Allen Martin
2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
2004-05-05 11:24 ` Ross Dickson
0 siblings, 2 replies; 73+ messages in thread
From: Allen Martin @ 2004-05-03 22:09 UTC (permalink / raw)
To: linux-kernel; +Cc: Ross Dickson, Len Brown
I'm happy to be able to make this information public to the Linux
community. This information has been previously released to BIOS /
board vendors as an appnote, but in the interest of getting a workaround
into the hands of users the quickest we're making it public for possible
inclusion into the Linux kernel.
Problem:
C1 Halt Disconnect problem on nForce2 systems
Description:
A hang is caused when the CPU generates a very fast CONNECT/HALT cycle
sequence.
Workaround:
Set the SYSTEM_IDLE_TIMEOUT to 80 ns. This allows the state-machine and
timer to return to a proper state within 80 ns of the CONNECT and probe
appearing together.
Since the CPU will not issue another HALT within 80 ns of the initial
HALT, the failure condition is avoided.
This will require changing the value for register at bus:0 dev:0 func:0
offset 6c.
Chip Current Value New Value
C17 1F0FFF01 1F01FF01
C18D 9F0FFF01 9F01FF01
Northbridge chip version may be determined by reading the PCI revision
ID (offset 8) of the host bridge at bus:0 dev:0 func:0. C1 or greater
is C18D.
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-03 22:09 Allen Martin
@ 2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
2004-05-04 8:28 ` Prakash K. Cheemplavam
` (3 more replies)
2004-05-05 11:24 ` Ross Dickson
1 sibling, 4 replies; 73+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-05-03 23:11 UTC (permalink / raw)
To: Allen Martin, linux-kernel; +Cc: Ross Dickson, Len Brown
On Tuesday 04 of May 2004 00:09, Allen Martin wrote:
> I'm happy to be able to make this information public to the Linux
> community. This information has been previously released to BIOS /
> board vendors as an appnote, but in the interest of getting a workaround
> into the hands of users the quickest we're making it public for possible
> inclusion into the Linux kernel.
This is a great news! Below is an untested patch to address this issue.
Cheers.
[PATCH] fixup for C1 Halt Disconnect problem on nForce2 chipsets
Based on information provided by "Allen Martin" <AMartin@nvidia.com>.
linux-2.6.6-rc3-bk2-bzolnier/arch/i386/pci/fixup.c | 39 +++++++++++++++++++++
1 files changed, 39 insertions(+)
diff -puN arch/i386/pci/fixup.c~nforce2_fix arch/i386/pci/fixup.c
--- linux-2.6.6-rc3-bk2/arch/i386/pci/fixup.c~nforce2_fix 2004-05-04 00:27:18.114421672 +0200
+++ linux-2.6.6-rc3-bk2-bzolnier/arch/i386/pci/fixup.c 2004-05-04 01:02:29.821393416 +0200
@@ -187,6 +187,39 @@ static void __devinit pci_fixup_transpar
dev->transparent = 1;
}
+/*
+ * Fixup for C1 Halt Disconnect problem on nForce2 systems.
+ *
+ * From information provided by "Allen Martin" <AMartin@nvidia.com>:
+ *
+ * A hang is caused when the CPU generates a very fast CONNECT/HALT cycle
+ * sequence. Workaround is to set the SYSTEM_IDLE_TIMEOUT to 80 ns.
+ * This allows the state-machine and timer to return to a proper state within
+ * 80 ns of the CONNECT and probe appearing together. Since the CPU will not
+ * issue another HALT within 80 ns of the initial HALT, the failure condition
+ * is avoided.
+ */
+static void __devinit pci_fixup_nforce2(struct pci_dev *dev)
+{
+ u32 val, fixed_val;
+ u8 rev;
+
+ pci_read_config_byte(dev, PCI_REVISION_ID, &rev);
+
+ /*
+ * Chip Old value New value
+ * C17 0x1F01FF01 0x1F0FFF01
+ * C18D 0x9F01FF01 0x9F0FFF01
+ */
+ fixed_val = rev < 0xC1 ? 0x1F01FF01 : 0x9F01FF01;
+
+ pci_read_config_dword(dev, 0x6c, &val);
+ if (val != fixed_val) {
+ printk(KERN_WARNING "PCI: nForce2 C1 Halt Disconnet fixup\n");
+ pci_write_config_dword(dev, 0x6c, fixed_val);
+ }
+}
+
struct pci_fixup pcibios_fixups[] = {
{
.pass = PCI_FIXUP_HEADER,
@@ -290,5 +323,11 @@ struct pci_fixup pcibios_fixups[] = {
.device = PCI_ANY_ID,
.hook = pci_fixup_transparent_bridge
},
+ {
+ .pass = PCI_FIXUP_HEADER,
+ .vendor = PCI_VENDOR_ID_NVIDIA,
+ .device = PCI_DEVICE_ID_NVIDIA_NFORCE2,
+ .hook = pci_fixup_nforce2
+ },
{ .pass = 0 }
};
_
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
@ 2004-05-04 8:28 ` Prakash K. Cheemplavam
2004-05-04 21:10 ` Jeff Garzik
` (2 subsequent siblings)
3 siblings, 0 replies; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-05-04 8:28 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz
Cc: Allen Martin, linux-kernel, Ross Dickson, Len Brown
Bartlomiej Zolnierkiewicz wrote:
> On Tuesday 04 of May 2004 00:09, Allen Martin wrote:
>
>>I'm happy to be able to make this information public to the Linux
>>community. This information has been previously released to BIOS /
>>board vendors as an appnote, but in the interest of getting a workaround
>>into the hands of users the quickest we're making it public for possible
>>inclusion into the Linux kernel.
>
>
> This is a great news! Below is an untested patch to address this issue.
>
Yes it works!!!! Finally the nforce2 issue has been fixed. I still can't
believe it.
Dear Allen, it is nice that after all Nvidia decided to give out
information about this issue. I would have been so nice, if this had
been doen about 6 months ago, where I originally discovered the
connection between apic instability and cpu disconnect. But I guess I
shouldn't scold Nvidia but the mainboard manufacturers who were still
sleeping, like in my case: Abit. Till today the didn't manage to fix
this issue and the timer issue (and they released a new bios a few days
ago...)
Maybe Nvidia should scold the board manufacturers to keep their bioses
updated. After all it is Nvidia getting a bad image if everybody thinks
"Nvidia boards are unstable and they don't care to resplve it." So it
would be in Nvidia's own interest to push the manufacturers to integrate
such critical fixes ASAP.
The only issues left for me are
a) semi-stable nvidia binary driver
b) higher idle temperature with nvidia driver (I guess). I may also be a
sensors probelm as Abit's reading is known as not to be very precise and
read something else after every reboot thanks to new recalibration.
c) missing driver for nforce2 apu...
Thanx after all.
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* RE: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
@ 2004-05-04 20:38 Jesse Allen
2004-05-04 21:14 ` Craig Bradney
0 siblings, 1 reply; 73+ messages in thread
From: Jesse Allen @ 2004-05-04 20:38 UTC (permalink / raw)
To: linux-kernel
Allen Martin wrote:
> This will require changing the value for register at bus:0 dev:0 func:0
> offset 6c.
>
> Chip Current Value New Value
> C17 1F0FFF01 1F01FF01
> C18D 9F0FFF01 9F01FF01
>
> Northbridge chip version may be determined by reading the PCI revision
> ID (offset 8) of the host bridge at bus:0 dev:0 func:0. C1 or greater
> is C18D.
I believe I have confirmed that the Shuttle AN35N BIOS indeed has this fix as
of Dec 5th 03 version.
lspci -xxx -vvv
00:00.0 Host bridge: nVidia Corporation nForce2 AGP (different version?)
(rev c1)
...
60: 08 00 01 20 20 00 88 80 10 00 00 00 01 ff 01 9f
Jesse
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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:48 ` Patrick Dreker
3 siblings, 1 reply; 73+ messages in thread
From: Jeff Garzik @ 2004-05-04 21:10 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz
Cc: Allen Martin, linux-kernel, Ross Dickson, Len Brown
Bartlomiej Zolnierkiewicz wrote:
> +/*
> + * Fixup for C1 Halt Disconnect problem on nForce2 systems.
> + *
> + * From information provided by "Allen Martin" <AMartin@nvidia.com>:
> + *
> + * A hang is caused when the CPU generates a very fast CONNECT/HALT cycle
> + * sequence. Workaround is to set the SYSTEM_IDLE_TIMEOUT to 80 ns.
> + * This allows the state-machine and timer to return to a proper state within
> + * 80 ns of the CONNECT and probe appearing together. Since the CPU will not
> + * issue another HALT within 80 ns of the initial HALT, the failure condition
> + * is avoided.
> + */
> +static void __devinit pci_fixup_nforce2(struct pci_dev *dev)
Minor nit: is __devinit really needed?
You're changing a northbridge or a southbridge, not a PCI card, I
presume...? That would only need to be done once, when the kernel is
booted, regardless of CONFIG_HOTPLUG AFAICS.
Jeff
^ permalink raw reply [flat|nested] 73+ messages in thread
* RE: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-04 20:38 Jesse Allen
@ 2004-05-04 21:14 ` Craig Bradney
0 siblings, 0 replies; 73+ messages in thread
From: Craig Bradney @ 2004-05-04 21:14 UTC (permalink / raw)
To: Jesse Allen; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1068 bytes --]
On Tue, 2004-05-04 at 22:38, Jesse Allen wrote:
> Allen Martin wrote:
> > This will require changing the value for register at bus:0 dev:0 func:0
> > offset 6c.
> >
> > Chip Current Value New Value
> > C17 1F0FFF01 1F01FF01
> > C18D 9F0FFF01 9F01FF01
> >
> > Northbridge chip version may be determined by reading the PCI revision
> > ID (offset 8) of the host bridge at bus:0 dev:0 func:0. C1 or greater
> > is C18D.
>
> I believe I have confirmed that the Shuttle AN35N BIOS indeed has this fix as
> of Dec 5th 03 version.
>
> lspci -xxx -vvv
> 00:00.0 Host bridge: nVidia Corporation nForce2 AGP (different version?)
> (rev c1)
> ...
> 60: 08 00 01 20 20 00 88 80 10 00 00 00 01 ff 01 9f
I can confirm on my Asus A7N8X Deluxe v2.0 with BIOS 1007 (the latest),
that its reporting
60: 08 00 01 20 20 00 88 80 10 00 00 00 01 ff 0f 9f
So, it looks like it needs the new value as per the note.
I haven't applied that patch that was posted yesterday, am awaiting more
reaction from Len, Ross and all.
Craig
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-04 21:10 ` Jeff Garzik
@ 2004-05-04 21:29 ` Bartlomiej Zolnierkiewicz
0 siblings, 0 replies; 73+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2004-05-04 21:29 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Allen Martin, linux-kernel, Ross Dickson, Len Brown
On Tuesday 04 of May 2004 23:10, Jeff Garzik wrote:
> Bartlomiej Zolnierkiewicz wrote:
> > +/*
> > + * Fixup for C1 Halt Disconnect problem on nForce2 systems.
> > + *
> > + * From information provided by "Allen Martin" <AMartin@nvidia.com>:
> > + *
> > + * A hang is caused when the CPU generates a very fast CONNECT/HALT
> > cycle + * sequence. Workaround is to set the SYSTEM_IDLE_TIMEOUT to 80
> > ns. + * This allows the state-machine and timer to return to a proper
> > state within + * 80 ns of the CONNECT and probe appearing together.
> > Since the CPU will not + * issue another HALT within 80 ns of the initial
> > HALT, the failure condition + * is avoided.
> > + */
> > +static void __devinit pci_fixup_nforce2(struct pci_dev *dev)
>
> Minor nit: is __devinit really needed?
No, it's not needed.
I was mislead by the fact that all fixups there are marked with __devinit.
> You're changing a northbridge or a southbridge, not a PCI card, I
> presume...? That would only need to be done once, when the kernel is
> booted, regardless of CONFIG_HOTPLUG AFAICS.
Yep, the same is probably true for:
static void __devinit pci_fixup_i450nx(struct pci_dev *d)
static void __devinit pci_fixup_i450gx(struct pci_dev *d)
static void __devinit pci_fixup_umc_ide(struct pci_dev *d)
static void __devinit pci_fixup_latency(struct pci_dev *d)
static void __devinit pci_fixup_piix4_acpi(struct pci_dev *d)
static void __devinit pci_fixup_via_northbridge_bug(struct pci_dev *d)
static void __devinit pci_fixup_transparent_bridge(struct pci_dev *dev)
Bartlomiej
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-03 22:09 Allen Martin
2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
@ 2004-05-05 11:24 ` Ross Dickson
2004-05-05 12:18 ` Ian Kumlien
1 sibling, 1 reply; 73+ messages in thread
From: Ross Dickson @ 2004-05-05 11:24 UTC (permalink / raw)
To: Allen Martin, linux-kernel
Cc: Len Brown, Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien
On Tuesday 04 May 2004 08:09, Allen Martin wrote:
> I'm happy to be able to make this information public to the Linux
> community. This information has been previously released to BIOS /
> board vendors as an appnote, but in the interest of getting a workaround
> into the hands of users the quickest we're making it public for possible
> inclusion into the Linux kernel.
>
<snip>
Thank you very much Allen for being involved in linux development.
Obsolecense is the best ending a temporary workaround could have.
I think I have found the problem with the Albatron KM18G-pro Mobos I have been
using.
They can't see through their Windows.??!@@#$$%%&*&
ML1-0505-19 Re: Cause of lockups with KM-18G Pro is incorrect pci reg values in bios -please update bios
From:
"dr.pro" <dr.pro@albatron.com.tw>
To:
<ross@datscreative.com.au>
Date:
Today 17:38:08
Dear Ross,
Thank you very much for contacting Albatron technical support.
KM18G Pro has been proved under Windows 98SE/ME/2000/XP but Linux, so you
may encounter problems with it under Linux. We suggest you use Windows
98SE/ME/2000/XP for the stable performance. Sorry for the inconvenience and
please kindly understand it.
Please let us know if you have any question.
Best regards,
Dr.Pro
----- Original Message -----
From: "Ross Dickson" <ross@datscreative.com.au>
To: <dr.pro@albatron.com.tw>
Sent: Tuesday, May 04, 2004 8:19 PM
Subject: Cause of lockups with KM-18G Pro is incorrect pci reg values in
bios -please update bios
> Greetings,
>
> The following is required for Linux to function correctly on your KM-18G
Pro.
>
> Allen Martin of Nvidia explains.
>
> I'm happy to be able to make this information public to the Linux
> community. This information has been previously released to BIOS /
> board vendors as an appnote, but in the interest of getting a workaround
> into the hands of users the quickest we're making it public for possible
> inclusion into the Linux kernel.
>
>
> Problem:
> C1 Halt Disconnect problem on nForce2 systems
>
> Description:
> A hang is caused when the CPU generates a very fast CONNECT/HALT cycle
> sequence.
>
> Workaround:
> Set the SYSTEM_IDLE_TIMEOUT to 80 ns. This allows the state-machine and
> timer to return to a proper state within 80 ns of the CONNECT and probe
> appearing together.
>
> Since the CPU will not issue another HALT within 80 ns of the initial
> HALT, the failure condition is avoided.
>
> This will require changing the value for register at bus:0 dev:0 func:0
> offset 6c.
>
> Chip Current Value New Value
> C17 1F0FFF01 1F01FF01
> C18D 9F0FFF01 9F01FF01
>
> Northbridge chip version may be determined by reading the PCI revision
> ID (offset 8) of the host bridge at bus:0 dev:0 func:0. C1 or greater
> is C18D.
>
> Regards
> Ross Dickson
>
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
2004-05-04 8:28 ` Prakash K. Cheemplavam
2004-05-04 21:10 ` Jeff Garzik
@ 2004-05-05 12:14 ` Ross Dickson
2004-05-05 12:27 ` Ian Kumlien
2004-05-05 12:58 ` Maciej W. Rozycki
2004-05-05 12:48 ` Patrick Dreker
3 siblings, 2 replies; 73+ messages in thread
From: Ross Dickson @ 2004-05-05 12:14 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz, Allen Martin, linux-kernel
Cc: Len Brown, Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, Maciej W. Rozycki, Jamie Lokier, Daniel Drake,
Ian Kumlien
On Tuesday 04 May 2004 09:11, Bartlomiej Zolnierkiewicz wrote:
> On Tuesday 04 of May 2004 00:09, Allen Martin wrote:
> > I'm happy to be able to make this information public to the Linux
> > community. This information has been previously released to BIOS /
> > board vendors as an appnote, but in the interest of getting a workaround
> > into the hands of users the quickest we're making it public for possible
> > inclusion into the Linux kernel.
>
> This is a great news! Below is an untested patch to address this issue.
>
> Cheers.
>
>
> [PATCH] fixup for C1 Halt Disconnect problem on nForce2 chipsets
>
> Based on information provided by "Allen Martin" <AMartin@nvidia.com>.
>
> linux-2.6.6-rc3-bk2-bzolnier/arch/i386/pci/fixup.c | 39 +++++++++++++++++++++
> 1 files changed, 39 insertions(+)
>
> diff -puN arch/i386/pci/fixup.c~nforce2_fix arch/i386/pci/fixup.c
> --- linux-2.6.6-rc3-bk2/arch/i386/pci/fixup.c~nforce2_fix 2004-05-04 00:27:18.114421672 +0200
> +++ linux-2.6.6-rc3-bk2-bzolnier/arch/i386/pci/fixup.c 2004-05-04 01:02:29.821393416 +0200
> @@ -187,6 +187,39 @@ static void __devinit pci_fixup_transpar
> dev->transparent = 1;
> }
>
> +/*
> + * Fixup for C1 Halt Disconnect problem on nForce2 systems.
> + *
> + * From information provided by "Allen Martin" <AMartin@nvidia.com>:
> + *
> + * A hang is caused when the CPU generates a very fast CONNECT/HALT cycle
> + * sequence. Workaround is to set the SYSTEM_IDLE_TIMEOUT to 80 ns.
> + * This allows the state-machine and timer to return to a proper state within
> + * 80 ns of the CONNECT and probe appearing together. Since the CPU will not
> + * issue another HALT within 80 ns of the initial HALT, the failure condition
> + * is avoided.
> + */
> +static void __devinit pci_fixup_nforce2(struct pci_dev *dev)
> +{
> + u32 val, fixed_val;
> + u8 rev;
> +
> + pci_read_config_byte(dev, PCI_REVISION_ID, &rev);
> +
> + /*
> + * Chip Old value New value
> + * C17 0x1F01FF01 0x1F0FFF01
> + * C18D 0x9F01FF01 0x9F0FFF01
> + */
> + fixed_val = rev < 0xC1 ? 0x1F01FF01 : 0x9F01FF01;
> +
> + pci_read_config_dword(dev, 0x6c, &val);
> + if (val != fixed_val) {
> + printk(KERN_WARNING "PCI: nForce2 C1 Halt Disconnet fixup\n");
> + pci_write_config_dword(dev, 0x6c, fixed_val);
> + }
> +}
> +
> struct pci_fixup pcibios_fixups[] = {
> {
> .pass = PCI_FIXUP_HEADER,
> @@ -290,5 +323,11 @@ struct pci_fixup pcibios_fixups[] = {
> .device = PCI_ANY_ID,
> .hook = pci_fixup_transparent_bridge
> },
> + {
> + .pass = PCI_FIXUP_HEADER,
> + .vendor = PCI_VENDOR_ID_NVIDIA,
> + .device = PCI_DEVICE_ID_NVIDIA_NFORCE2,
> + .hook = pci_fixup_nforce2
> + },
> { .pass = 0 }
> };
>
> _
>
>
>
>
Minor typo
printk(KERN_WARNING "PCI: nForce2 C1 Halt Disconnet fixup\n");
should be
printk(KERN_WARNING "PCI: nForce2 C1 Halt Disconnect fixup\n");
For 2.4.26 follows a rediffed patch.
Note as per other postings this
+static void __devinit pci_fixup_nforce2(struct pci_dev *dev)
should be
+static void __init pci_fixup_nforce2(struct pci_dev *dev)
which would match other 2.4 fixups e.g.
static void __init pci_fixup_transparent_bridge(struct pci_dev *dev)
Works well for 2.4.26 on my epox 8rga+. Yet to try on my albatron KM18G-pros.
To my knowledge the only thing left to sort out for the normal kernel
distro is what to do about the timer_ack issue in check_timer().
We need it off for nforce2 to get nmi_watchdog=1 working with ioapic
8254 timer pin0 timer override patch routing. I vote to revisit Maciej's
patch that was dropped by Linus after appearing in 2.6.3-mm3.
For those with problems of clock skew with the timer into pin0 routing,
that patch gave a virtual wire timer routing which worked well for those
users.
It also works around problems for ibm users.
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/4421.html
That patch is last posted here (Maciej please correct me if i'm wrong)
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/3174.html
Here is rediffed nforce2 patch for 2.4.26
--- linux-2.4.26/arch/i386/kernel/pci-pc.c.orig 2003-11-29 04:26:19.000000000 +1000
+++ linux/arch/i386/kernel/pci-pc.c 2004-05-04 22:54:32.000000000 +1000
@@ -1326,10 +1326,43 @@ static void __init pci_fixup_transparent
if ((dev->class >> 8) == PCI_CLASS_BRIDGE_PCI &&
(dev->device & 0xff00) == 0x2400)
dev->transparent = 1;
}
+/*
+ * Fixup for C1 Halt Disconnect problem on nForce2 systems.
+ *
+ * From information provided by "Allen Martin" <AMartin@nvidia.com>:
+ *
+ * A hang is caused when the CPU generates a very fast CONNECT/HALT cycle
+ * sequence. Workaround is to set the SYSTEM_IDLE_TIMEOUT to 80 ns.
+ * This allows the state-machine and timer to return to a proper state within
+ * 80 ns of the CONNECT and probe appearing together. Since the CPU will not
+ * issue another HALT within 80 ns of the initial HALT, the failure condition
+ * is avoided.
+ */
+static void __devinit pci_fixup_nforce2(struct pci_dev *dev)
+{
+ u32 val, fixed_val;
+ u8 rev;
+
+ pci_read_config_byte(dev, PCI_REVISION_ID, &rev);
+
+ /*
+ * Chip Old value New value
+ * C17 0x1F01FF01 0x1F0FFF01
+ * C18D 0x9F01FF01 0x9F0FFF01
+ */
+ fixed_val = rev < 0xC1 ? 0x1F01FF01 : 0x9F01FF01;
+
+ pci_read_config_dword(dev, 0x6c, &val);
+ if (val != fixed_val) {
+ printk(KERN_WARNING "PCI: nForce2 C1 Halt Disconnect fixup\n");
+ pci_write_config_dword(dev, 0x6c, fixed_val);
+ }
+}
+
struct pci_fixup pcibios_fixups[] = {
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82451NX, pci_fixup_i450nx },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82454GX, pci_fixup_i450gx },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_UMC, PCI_DEVICE_ID_UMC_UM8886BF, pci_fixup_umc_ide },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_5513, pci_fixup_ide_trash },
@@ -1341,10 +1374,11 @@ struct pci_fixup pcibios_fixups[] = {
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8622, pci_fixup_via_northbridge_bug },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8361, pci_fixup_via_northbridge_bug },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8367_0, pci_fixup_via_northbridge_bug },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, pci_fixup_ncr53c810 },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_INTEL, PCI_ANY_ID, pci_fixup_transparent_bridge },
+ { PCI_FIXUP_HEADER, PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE2, pci_fixup_nforce2},
{ 0 }
};
/*
* Called after each bus is probed, but before its children
Regards
Ross.
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 11:24 ` Ross Dickson
@ 2004-05-05 12:18 ` Ian Kumlien
2004-05-05 12:52 ` Ross Dickson
0 siblings, 1 reply; 73+ messages in thread
From: Ian Kumlien @ 2004-05-05 12:18 UTC (permalink / raw)
To: ross
Cc: Allen Martin, linux-kernel, Len Brown, Jesse Allen,
Prakash K. Cheemplavam, Craig Bradney, christian.kroener,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake
[-- Attachment #1: Type: text/plain, Size: 1039 bytes --]
On Wed, 2004-05-05 at 13:24, Ross Dickson wrote:
<snip>
> They can't see through their Windows.??!@@#$$%%&*&
>
> ML1-0505-19 Re: Cause of lockups with KM-18G Pro is incorrect pci reg values in bios -please update bios
>
> From:
> "dr.pro" <dr.pro@albatron.com.tw>
>
> To:
> <ross@datscreative.com.au>
>
> Date:
> Today 17:38:08
>
> Dear Ross,
>
> Thank you very much for contacting Albatron technical support.
>
> KM18G Pro has been proved under Windows 98SE/ME/2000/XP but Linux, so you
> may encounter problems with it under Linux. We suggest you use Windows
> 98SE/ME/2000/XP for the stable performance. Sorry for the inconvenience and
> please kindly understand it.
>
> Please let us know if you have any question.
Please kindly understand it? I wouldn't... I'm about to bash asus, so...
This information gets me in the moood to do some real bashing =)
Btw, does windows do a C1 disconnect? And if so how often?
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 12:14 ` Ross Dickson
@ 2004-05-05 12:27 ` Ian Kumlien
2004-05-05 13:12 ` Ross Dickson
2004-05-05 12:58 ` Maciej W. Rozycki
1 sibling, 1 reply; 73+ messages in thread
From: Ian Kumlien @ 2004-05-05 12:27 UTC (permalink / raw)
To: ross
Cc: Bartlomiej Zolnierkiewicz, Allen Martin, linux-kernel, Len Brown,
Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, Maciej W. Rozycki, Jamie Lokier, Daniel Drake
[-- Attachment #1: Type: text/plain, Size: 1473 bytes --]
On Wed, 2004-05-05 at 14:14, Ross Dickson wrote:
> To my knowledge the only thing left to sort out for the normal kernel
> distro is what to do about the timer_ack issue in check_timer().
>
> We need it off for nforce2 to get nmi_watchdog=1 working with ioapic
> 8254 timer pin0 timer override patch routing. I vote to revisit Maciej's
> patch that was dropped by Linus after appearing in 2.6.3-mm3.
> For those with problems of clock skew with the timer into pin0 routing,
> that patch gave a virtual wire timer routing which worked well for those
> users.
Whats the real difference between nmi_watchdog?1 and =2? Since
nmi_watchdog=2 works here:
NMI: 9884
LOC: 80297310
ERR: 0
MIS: 0
Also, wouldn't it be better to not depend on bioses and bios versions
atm, ie hardcode pin0 since Allen Martin stated that it's hardwired on
pin0?
ie, just:
if(pin2 && nforce2_chip)
{
printk("ALERT: Known defect in bios, mail your manufacturer. Using
pin0\n");
<whateverisneededtousepin0>
}
Since this whole problem is pissing me off... It would be much better if
one had some kind of access to the information from nvidia so you can
just point at it, telling the mb-manuf. that they are morons and go fix
=). (Did i mention that i have had this problem for quite some time and
would have gone postal if it wasn't for Ross Dicksons fixes =))
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-03 23:11 ` Bartlomiej Zolnierkiewicz
` (2 preceding siblings ...)
2004-05-05 12:14 ` Ross Dickson
@ 2004-05-05 12:48 ` Patrick Dreker
2004-05-05 13:34 ` Patrick Dreker
3 siblings, 1 reply; 73+ messages in thread
From: Patrick Dreker @ 2004-05-05 12:48 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz
Cc: Allen Martin, linux-kernel, Ross Dickson, Len Brown
[-- Attachment #1: Type: text/plain, Size: 1300 bytes --]
Am Dienstag, 4. Mai 2004 01:11 schrieb Bartlomiej Zolnierkiewicz:
> On Tuesday 04 of May 2004 00:09, Allen Martin wrote:
> > I'm happy to be able to make this information public to the Linux
> > community. This information has been previously released to BIOS /
> > board vendors as an appnote, but in the interest of getting a workaround
> > into the hands of users the quickest we're making it public for possible
> > inclusion into the Linux kernel.
>
> This is a great news! Below is an untested patch to address this issue.
The patch also applies cleanly to kernel 2.6.5, which is what I am running.
The machine is now running for more than 21 hours with APIC enabled and it
seems it is completely stable now. Without the patch I was able to lock the
system solid in less than a minute by just pushing some MB of data across the
LAN. I have been running continuous network copies of a 400MB file for about
8 hours and experienced no problems.
As a side note: the idle CPU temperature reported by ACPI on my Shuttle
iDeq200N barebone has gone from approx. 50 degrees down to approx. 43
degrees.
Patrick
--
Patrick Dreker
GPG KeyID : 0xFCC2F7A7 (Patrick Dreker)
Fingerprint: 7A21 FC7F 707A C498 F370 1008 7044 66DA FCC2 F7A7
Key available from keyservers
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 12:18 ` Ian Kumlien
@ 2004-05-05 12:52 ` Ross Dickson
2004-05-05 13:08 ` Ian Kumlien
0 siblings, 1 reply; 73+ messages in thread
From: Ross Dickson @ 2004-05-05 12:52 UTC (permalink / raw)
To: Ian Kumlien
Cc: Allen Martin, linux-kernel, Len Brown, Jesse Allen,
Prakash K. Cheemplavam, Craig Bradney, christian.kroener,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake
On Wednesday 05 May 2004 22:18, Ian Kumlien wrote:
> On Wed, 2004-05-05 at 13:24, Ross Dickson wrote:
> <snip>
> > They can't see through their Windows.??!@@#$$%%&*&
> >
> > ML1-0505-19 Re: Cause of lockups with KM-18G Pro is incorrect pci reg values in bios -please update bios
> >
> > From:
> > "dr.pro" <dr.pro@albatron.com.tw>
> >
> > To:
> > <ross@datscreative.com.au>
> >
> > Date:
> > Today 17:38:08
> >
> > Dear Ross,
> >
> > Thank you very much for contacting Albatron technical support.
> >
> > KM18G Pro has been proved under Windows 98SE/ME/2000/XP but Linux, so you
> > may encounter problems with it under Linux. We suggest you use Windows
> > 98SE/ME/2000/XP for the stable performance. Sorry for the inconvenience and
> > please kindly understand it.
> >
> > Please let us know if you have any question.
>
> Please kindly understand it? I wouldn't... I'm about to bash asus, so...
> This information gets me in the moood to do some real bashing =)
>
> Btw, does windows do a C1 disconnect? And if so how often?
I think it does as temps are lower then linux without disconnect.
Here are some temperatures from my machine read from the bios on reboot.
I gave it minimal activity for the minutes prior to reboot.
Win98, 47C
XPHome, 42C
Patched Linux 2.4.24 (1000Hz), 40C
Linux 2.6.3-rc1-mm1, 53C with no disconnect
I think the disconnect happens for less time percentage. With slower
ticks one might assume less often than linux.
-Ross
>
> --
> Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 12:14 ` Ross Dickson
2004-05-05 12:27 ` Ian Kumlien
@ 2004-05-05 12:58 ` Maciej W. Rozycki
1 sibling, 0 replies; 73+ messages in thread
From: Maciej W. Rozycki @ 2004-05-05 12:58 UTC (permalink / raw)
To: Ross Dickson
Cc: Bartlomiej Zolnierkiewicz, Allen Martin, linux-kernel, Len Brown,
Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, Jamie Lokier, Daniel Drake, Ian Kumlien
On Wed, 5 May 2004, Ross Dickson wrote:
> We need it off for nforce2 to get nmi_watchdog=1 working with ioapic
> 8254 timer pin0 timer override patch routing. I vote to revisit Maciej's
> patch that was dropped by Linus after appearing in 2.6.3-mm3.
> For those with problems of clock skew with the timer into pin0 routing,
> that patch gave a virtual wire timer routing which worked well for those
> users.
>
> It also works around problems for ibm users.
> http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/4421.html
>
> That patch is last posted here (Maciej please correct me if i'm wrong)
> http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/3174.html
That's my latest version, although the one in -mm had a minor readability
improvement, so you may use that one instead.
BTW, can you please check if the chipset fixup cures the timer IRQ line
noise?
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 12:52 ` Ross Dickson
@ 2004-05-05 13:08 ` Ian Kumlien
2004-05-06 1:50 ` Jesse Allen
0 siblings, 1 reply; 73+ messages in thread
From: Ian Kumlien @ 2004-05-05 13:08 UTC (permalink / raw)
To: ross
Cc: Allen Martin, linux-kernel, Len Brown, Jesse Allen,
Prakash K. Cheemplavam, Craig Bradney, christian.kroener,
Maciej W. Rozycki, Jamie Lokier, Daniel Drake
[-- Attachment #1: Type: text/plain, Size: 1858 bytes --]
On Wed, 2004-05-05 at 14:52, Ross Dickson wrote:
> On Wednesday 05 May 2004 22:18, Ian Kumlien wrote:
> > On Wed, 2004-05-05 at 13:24, Ross Dickson wrote:
> > <snip>
> > > They can't see through their Windows.??!@@#$$%%&*&
> > >
> > > ML1-0505-19 Re: Cause of lockups with KM-18G Pro is incorrect pci reg values in bios -please update bios
> > >
> > > From:
> > > "dr.pro" <dr.pro@albatron.com.tw>
> > >
> > > To:
> > > <ross@datscreative.com.au>
> > >
> > > Date:
> > > Today 17:38:08
> > >
> > > Dear Ross,
> > >
> > > Thank you very much for contacting Albatron technical support.
> > >
> > > KM18G Pro has been proved under Windows 98SE/ME/2000/XP but Linux, so you
> > > may encounter problems with it under Linux. We suggest you use Windows
> > > 98SE/ME/2000/XP for the stable performance. Sorry for the inconvenience and
> > > please kindly understand it.
> > >
> > > Please let us know if you have any question.
> >
> > Please kindly understand it? I wouldn't... I'm about to bash asus, so...
> > This information gets me in the moood to do some real bashing =)
> >
> > Btw, does windows do a C1 disconnect? And if so how often?
>
> I think it does as temps are lower then linux without disconnect.
> Here are some temperatures from my machine read from the bios on reboot.
> I gave it minimal activity for the minutes prior to reboot.
>
> Win98, 47C
> XPHome, 42C
> Patched Linux 2.4.24 (1000Hz), 40C
> Linux 2.6.3-rc1-mm1, 53C with no disconnect
>
> I think the disconnect happens for less time percentage. With slower
> ticks one might assume less often than linux.
> -Ross
Which means that the problem isn't as likely to occur under Windows,
which also explains why mb-manuf ppl are lazy =P.
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 12:27 ` Ian Kumlien
@ 2004-05-05 13:12 ` Ross Dickson
2004-05-05 13:23 ` Ian Kumlien
0 siblings, 1 reply; 73+ messages in thread
From: Ross Dickson @ 2004-05-05 13:12 UTC (permalink / raw)
To: Ian Kumlien
Cc: Bartlomiej Zolnierkiewicz, Allen Martin, linux-kernel, Len Brown,
Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, Maciej W. Rozycki, Jamie Lokier, Daniel Drake
On Wednesday 05 May 2004 22:27, Ian Kumlien wrote:
> On Wed, 2004-05-05 at 14:14, Ross Dickson wrote:
> > To my knowledge the only thing left to sort out for the normal kernel
> > distro is what to do about the timer_ack issue in check_timer().
> >
> > We need it off for nforce2 to get nmi_watchdog=1 working with ioapic
> > 8254 timer pin0 timer override patch routing. I vote to revisit Maciej's
> > patch that was dropped by Linus after appearing in 2.6.3-mm3.
> > For those with problems of clock skew with the timer into pin0 routing,
> > that patch gave a virtual wire timer routing which worked well for those
> > users.
>
> Whats the real difference between nmi_watchdog?1 and =2? Since
> nmi_watchdog=2 works here:
>
> NMI: 9884
> LOC: 80297310
> ERR: 0
> MIS: 0
>From memory 2 uses resources that code profiling tools need to use so
if you can use 1 then you can have your watchdog and profile too.
>
> Also, wouldn't it be better to not depend on bioses and bios versions
> atm, ie hardcode pin0 since Allen Martin stated that it's hardwired on
> pin0?
>
> ie, just:
> if(pin2 && nforce2_chip)
> {
> printk("ALERT: Known defect in bios, mail your manufacturer. Using
> pin0\n");
> <whateverisneededtousepin0>
> }
It should be OK, but those with mobos that get clock skew on pin 0 would
then demand a clock skew fix for their noisy hardware. I don't have a
motherboard with skew problems.
Personally I think that the clock system should be made immune to noise
generated timer interrupts just as it has been coded to detect missing
timer interrupts. I am pretty sure on nforce2 athlon mobos the tsc is used
in detecting missing pulses. Kind of like a digital phase locked loop? so
should it not also debounce the interrupts given that the ioapic interrupt
hardware cannot?
http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/6385.html
Obviously the pc hardware design is flawed in this respect.
Anyone know how to modify the existing timer tsc code to do this? And
offer to do it? Any brand/type of mobo is open to clock speed up due
to this effect, so I think it should be fixed, debouncing is fundamental
to input transitions that need to be counted.
-Ross
>
> Since this whole problem is pissing me off... It would be much better if
> one had some kind of access to the information from nvidia so you can
> just point at it, telling the mb-manuf. that they are morons and go fix
> =). (Did i mention that i have had this problem for quite some time and
> would have gone postal if it wasn't for Ross Dicksons fixes =))
>
> --
> Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
>
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 13:12 ` Ross Dickson
@ 2004-05-05 13:23 ` Ian Kumlien
0 siblings, 0 replies; 73+ messages in thread
From: Ian Kumlien @ 2004-05-05 13:23 UTC (permalink / raw)
To: ross
Cc: Bartlomiej Zolnierkiewicz, Allen Martin, linux-kernel, Len Brown,
Jesse Allen, Prakash K. Cheemplavam, Craig Bradney,
christian.kroener, Maciej W. Rozycki, Jamie Lokier, Daniel Drake
[-- Attachment #1: Type: text/plain, Size: 2665 bytes --]
On Wed, 2004-05-05 at 15:12, Ross Dickson wrote:
> On Wednesday 05 May 2004 22:27, Ian Kumlien wrote:
> > On Wed, 2004-05-05 at 14:14, Ross Dickson wrote:
> > > To my knowledge the only thing left to sort out for the normal kernel
> > > distro is what to do about the timer_ack issue in check_timer().
> > >
> > > We need it off for nforce2 to get nmi_watchdog=1 working with ioapic
> > > 8254 timer pin0 timer override patch routing. I vote to revisit Maciej's
> > > patch that was dropped by Linus after appearing in 2.6.3-mm3.
> > > For those with problems of clock skew with the timer into pin0 routing,
> > > that patch gave a virtual wire timer routing which worked well for those
> > > users.
> >
> > Whats the real difference between nmi_watchdog?1 and =2? Since
> > nmi_watchdog=2 works here:
> >
> > NMI: 9884
> > LOC: 80297310
> > ERR: 0
> > MIS: 0
>
> From memory 2 uses resources that code profiling tools need to use so
> if you can use 1 then you can have your watchdog and profile too.
Ahh outch...
> > Also, wouldn't it be better to not depend on bioses and bios versions
> > atm, ie hardcode pin0 since Allen Martin stated that it's hardwired on
> > pin0?
> >
> > ie, just:
> > if(pin2 && nforce2_chip)
> > {
> > printk("ALERT: Known defect in bios, mail your manufacturer. Using
> > pin0\n");
> > <whateverisneededtousepin0>
> > }
>
> It should be OK, but those with mobos that get clock skew on pin 0 would
> then demand a clock skew fix for their noisy hardware. I don't have a
> motherboard with skew problems.
Like: cat ntp.drift
-12.282
> Personally I think that the clock system should be made immune to noise
> generated timer interrupts just as it has been coded to detect missing
> timer interrupts. I am pretty sure on nforce2 athlon mobos the tsc is used
> in detecting missing pulses. Kind of like a digital phase locked loop? so
> should it not also debounce the interrupts given that the ioapic interrupt
> hardware cannot?
> http://linux.derkeiler.com/Mailing-Lists/Kernel/2004-04/6385.html
> Obviously the pc hardware design is flawed in this respect.
x86 is flawed in many ways, but it's cheap and you get what you pay for
=).
But wouldn't that cause problems with cpu freq scaling?
> Anyone know how to modify the existing timer tsc code to do this? And
> offer to do it? Any brand/type of mobo is open to clock speed up due
> to this effect, so I think it should be fixed, debouncing is fundamental
> to input transitions that need to be counted.
--
Ian Kumlien <pomac () vapor ! com> -- http://pomac.netswarm.net
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 12:48 ` Patrick Dreker
@ 2004-05-05 13:34 ` Patrick Dreker
0 siblings, 0 replies; 73+ messages in thread
From: Patrick Dreker @ 2004-05-05 13:34 UTC (permalink / raw)
To: Bartlomiej Zolnierkiewicz
Cc: Allen Martin, linux-kernel, Ross Dickson, Len Brown
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Am Mittwoch, 5. Mai 2004 14:48 schrieb Patrick Dreker:
> As a side note: the idle CPU temperature reported by ACPI on my Shuttle
> iDeq200N barebone has gone from approx. 50 degrees down to approx. 43
Make that *Biostar* iDeq200N...
Patrick
- --
Patrick Dreker
GPG KeyID : 0xFCC2F7A7 (Patrick Dreker)
Fingerprint: 7A21 FC7F 707A C498 F370 1008 7044 66DA FCC2 F7A7
Key available from keyservers
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFAmO1ccERm2vzC96cRAom8AJoDAOZ9aiTVoxfbr88BptRt29yHAwCghl9j
IM91QHnnHlTnuOJ1sf/i3Jw=
=XCJ4
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-05 13:08 ` Ian Kumlien
@ 2004-05-06 1:50 ` Jesse Allen
0 siblings, 0 replies; 73+ messages in thread
From: Jesse Allen @ 2004-05-06 1:50 UTC (permalink / raw)
To: Ian Kumlien; +Cc: ross, linux-kernel
On Wed, May 05, 2004 at 03:08:01PM +0200, Ian Kumlien wrote:
> On Wed, 2004-05-05 at 14:52, Ross Dickson wrote:
> > On Wednesday 05 May 2004 22:18, Ian Kumlien wrote:
> > > On Wed, 2004-05-05 at 13:24, Ross Dickson wrote:
> > > <snip>
> > > > They can't see through their Windows.??!@@#$$%%&*&
> > > >
> > > > ML1-0505-19 Re: Cause of lockups with KM-18G Pro is incorrect pci reg values in bios -please update bios
> > > >
> > > > From:
> > > > "dr.pro" <dr.pro@albatron.com.tw>
> > > >
> > > > To:
> > > > <ross@datscreative.com.au>
> > > >
> > > > Date:
> > > > Today 17:38:08
> > > >
> > > > Dear Ross,
> > > >
> > > > Thank you very much for contacting Albatron technical support.
> > > >
> > > > KM18G Pro has been proved under Windows 98SE/ME/2000/XP but Linux, so > > > > you may encounter problems with it under Linux. We suggest you use
> > > > Windows 98SE/ME/2000/XP for the stable performance. Sorry for the
> > > > inconvenience and please kindly understand it.
> > > >
> > > > Please let us know if you have any question.
!!!
> > >
> > > Please kindly understand it? I wouldn't... I'm about to bash asus, so...
> > > This information gets me in the moood to do some real bashing =)
> > >
> > > Btw, does windows do a C1 disconnect? And if so how often?
> >
> > I think it does as temps are lower then linux without disconnect.
> > Here are some temperatures from my machine read from the bios on reboot.
> > I gave it minimal activity for the minutes prior to reboot.
> >
> > Win98, 47C
> > XPHome, 42C
> > Patched Linux 2.4.24 (1000Hz), 40C
> > Linux 2.6.3-rc1-mm1, 53C with no disconnect
Patched AN35N Bios w/ Linux, C1 Disconnect on:
idle system, 39-41 C
heavy activity, 50-51 C
Though I have since added two additional fans to my system. When it is under
heavy activity, it will obviously go up to 51 C. When it is finished and
becomes idle again, then the CPU temp will quickly go back down to 39-41 C
because the additional fans remove the heat quite effectively.
> >
> > I think the disconnect happens for less time percentage. With slower
> > ticks one might assume less often than linux.
> > -Ross
>
> Which means that the problem isn't as likely to occur under Windows,
> which also explains why mb-manuf ppl are lazy =P.
>
Ross, you should reply to them and say the problem affects windows as well. I
can't imagine it immune. Although, windows is not that aggressive, I think
it's still affected. It doesn't matter that people don't think windows has
this hang. It still has it. It doesn't matter that they can't reproduce it
under what they think are normal circumstances. It _still_ has it.
Actually it isn't a OS problem, it's a BIOS problem. It has nothing to do with
the OS. It's the quality of their boards we're talking about. If only they
get that...
Jesse
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
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
0 siblings, 2 replies; 73+ messages in thread
From: Richard James @ 2004-05-07 4:47 UTC (permalink / raw)
To: Jesse Allen; +Cc: linux-kernel
Jesse Allen wrote:
>Len Brown wrote:
>
>
>>Have you been able to hang the AN35N under any conditions?
>>Old BIOS, non-vanilla kernel?
>>
>>
>
>Yes, and I described that it will hang under the pre-Dec 5th BIOS in another
>mail.
>
>I still have images of the buggy BIOS, and the fixed one on my hard drive.
>They are also available at ftp://ftp.shuttle.com/BIOS/an35_n/ as
>an35s00j.bin (Oct 2003)
>an35s00l.bin (Dec 5th 2003)
>
>
>
ASUS have now supplied a BIOS update for the A7N8X-X which fixes the C1
halt crash.
dated the 2004/04/21. So I assume that they will supply a patch for all
nforce2 motherboards.
Richard James
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-07 4:47 ` Richard James
@ 2004-05-07 7:13 ` Craig Bradney
2004-05-08 5:33 ` Richard James
1 sibling, 0 replies; 73+ messages in thread
From: Craig Bradney @ 2004-05-07 7:13 UTC (permalink / raw)
To: Richard James; +Cc: Jesse Allen, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 936 bytes --]
On Fri, 2004-05-07 at 06:47, Richard James wrote:
> Jesse Allen wrote:
>
> >Len Brown wrote:
> >
> >
> >>Have you been able to hang the AN35N under any conditions?
> >>Old BIOS, non-vanilla kernel?
> >>
> >>
> >
> >Yes, and I described that it will hang under the pre-Dec 5th BIOS in another
> >mail.
> >
> >I still have images of the buggy BIOS, and the fixed one on my hard drive.
> >They are also available at ftp://ftp.shuttle.com/BIOS/an35_n/ as
> >an35s00j.bin (Oct 2003)
> >an35s00l.bin (Dec 5th 2003)
> >
> >
> >
> ASUS have now supplied a BIOS update for the A7N8X-X which fixes the C1
> halt crash.
> dated the 2004/04/21. So I assume that they will supply a patch for all
> nforce2 motherboards.
Only for the A7N8X-X though. I like their description of the fixes:
1. Improve some memory modules stability.
Did you apply it and then run lspci -xxx -vvv on it to find out?
Craig
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-07 4:47 ` Richard James
2004-05-07 7:13 ` Craig Bradney
@ 2004-05-08 5:33 ` Richard James
1 sibling, 0 replies; 73+ messages in thread
From: Richard James @ 2004-05-08 5:33 UTC (permalink / raw)
To: Richard James; +Cc: Jesse Allen, linux-kernel
Richard James wrote:
> ASUS have now supplied a BIOS update for the A7N8X-X which fixes the
> C1 halt crash.
> dated the 2004/04/21. So I assume that they will supply a patch for
> all nforce2 motherboards.
No this is wrong after retesting with a clean kernel the machine still
locks up. BIOS 1009 does nothing for us.
Richard James.
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-03 20:45 ` Jesse Allen
@ 2004-05-17 15:26 ` Prakash K. Cheemplavam
2004-05-17 19:32 ` Craig Bradney
0 siblings, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-05-17 15:26 UTC (permalink / raw)
To: Jesse Allen
Cc: Ross Dickson, Len Brown, a.verweij, Craig Bradney,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
Hi all,
I just made an interesting finding and would like to have comments from
NVidia:
Chip Current Value New Value
C17 1F0FFF01 1F01FF01
C18D 9F0FFF01 9F01FF01
In fact I have the newer chip revision (lspci says c1), but due to a
post at Abit Forums I tried to use the value for the older revision on
my board, and guess what: I never had such low idle temps! I am
currently even using nvidia binary graphics driver and usually I would
be having around 49-51°C idle temp, but now it is around 45°C, and it
was not the first boot (then the mobo usually shows 5°C less). Instead
the temp steadily fell from >50°C to 45°C.
(esp @nvidia:) Is there anything evil using the old chip's value for the
new chip? So far I haven't noticed any bad thing about it. Perhaps some
daring nforce2 user with the new revision should try as well.
bye,
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-17 15:26 ` Prakash K. Cheemplavam
@ 2004-05-17 19:32 ` Craig Bradney
2004-05-17 19:37 ` Prakash K. Cheemplavam
0 siblings, 1 reply; 73+ messages in thread
From: Craig Bradney @ 2004-05-17 19:32 UTC (permalink / raw)
To: Prakash K. Cheemplavam
Cc: Jesse Allen, Ross Dickson, Len Brown, a.verweij,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 1135 bytes --]
On Mon, 2004-05-17 at 17:26, Prakash K. Cheemplavam wrote:
> Hi all,
>
> I just made an interesting finding and would like to have comments from
> NVidia:
>
> Chip Current Value New Value
> C17 1F0FFF01 1F01FF01
> C18D 9F0FFF01 9F01FF01
>
> In fact I have the newer chip revision (lspci says c1), but due to a
> post at Abit Forums I tried to use the value for the older revision on
> my board, and guess what: I never had such low idle temps! I am
> currently even using nvidia binary graphics driver and usually I would
> be having around 49-51°C idle temp, but now it is around 45°C, and it
> was not the first boot (then the mobo usually shows 5°C less). Instead
> the temp steadily fell from >50°C to 45°C.
>
> (esp @nvidia:) Is there anything evil using the old chip's value for the
> new chip? So far I haven't noticed any bad thing about it. Perhaps some
> daring nforce2 user with the new revision should try as well.
>
Isnt it the case that that change is the one that brings about
stability? Was indicated before to be the main causing c1halt crashes.
Craig
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-17 19:32 ` Craig Bradney
@ 2004-05-17 19:37 ` Prakash K. Cheemplavam
2004-05-17 19:57 ` Craig Bradney
0 siblings, 1 reply; 73+ messages in thread
From: Prakash K. Cheemplavam @ 2004-05-17 19:37 UTC (permalink / raw)
To: Craig Bradney
Cc: Jesse Allen, Ross Dickson, Len Brown, a.verweij,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
Craig Bradney wrote:
> On Mon, 2004-05-17 at 17:26, Prakash K. Cheemplavam wrote:
>
>>Hi all,
>>
>>I just made an interesting finding and would like to have comments from
>>NVidia:
>>
>>Chip Current Value New Value
>>C17 1F0FFF01 1F01FF01
>>C18D 9F0FFF01 9F01FF01
>>
>>In fact I have the newer chip revision (lspci says c1), but due to a
>>post at Abit Forums I tried to use the value for the older revision on
>>my board, and guess what: I never had such low idle temps! I am
>>currently even using nvidia binary graphics driver and usually I would
>>be having around 49-51°C idle temp, but now it is around 45°C, and it
>>was not the first boot (then the mobo usually shows 5°C less). Instead
>>the temp steadily fell from >50°C to 45°C.
>>
>>(esp @nvidia:) Is there anything evil using the old chip's value for the
>>new chip? So far I haven't noticed any bad thing about it. Perhaps some
>>daring nforce2 user with the new revision should try as well.
>>
>
>
> Isnt it the case that that change is the one that brings about
> stability? Was indicated before to be the main causing c1halt crashes.
Nope, I am changing the 9F to 1F. The "stability byte" was changing the
0F to 01. I am no using 1F01FF01 instead of 9F01FF01. I guess I wasn't
clear enough.
Prakash
^ permalink raw reply [flat|nested] 73+ messages in thread
* Re: IO-APIC on nforce2 [PATCH] + [PATCH] for nmi_debug=1 + [PATCH] for idle=C1halt, 2.6.5
2004-05-17 19:37 ` Prakash K. Cheemplavam
@ 2004-05-17 19:57 ` Craig Bradney
0 siblings, 0 replies; 73+ messages in thread
From: Craig Bradney @ 2004-05-17 19:57 UTC (permalink / raw)
To: Prakash K. Cheemplavam
Cc: Jesse Allen, Ross Dickson, Len Brown, a.verweij,
christian.kroener, linux-kernel, Maciej W. Rozycki, Jamie Lokier,
Daniel Drake, Ian Kumlien, Allen Martin
[-- Attachment #1: Type: text/plain, Size: 1562 bytes --]
On Mon, 2004-05-17 at 21:37, Prakash K. Cheemplavam wrote:
> Craig Bradney wrote:
> > On Mon, 2004-05-17 at 17:26, Prakash K. Cheemplavam wrote:
> >
> >>Hi all,
> >>
> >>I just made an interesting finding and would like to have comments from
> >>NVidia:
> >>
> >>Chip Current Value New Value
> >>C17 1F0FFF01 1F01FF01
> >>C18D 9F0FFF01 9F01FF01
> >>
> >>In fact I have the newer chip revision (lspci says c1), but due to a
> >>post at Abit Forums I tried to use the value for the older revision on
> >>my board, and guess what: I never had such low idle temps! I am
> >>currently even using nvidia binary graphics driver and usually I would
> >>be having around 49-51°C idle temp, but now it is around 45°C, and it
> >>was not the first boot (then the mobo usually shows 5°C less). Instead
> >>the temp steadily fell from >50°C to 45°C.
> >>
> >>(esp @nvidia:) Is there anything evil using the old chip's value for the
> >>new chip? So far I haven't noticed any bad thing about it. Perhaps some
> >>daring nforce2 user with the new revision should try as well.
> >>
> >
> >
> > Isnt it the case that that change is the one that brings about
> > stability? Was indicated before to be the main causing c1halt crashes.
>
> Nope, I am changing the 9F to 1F. The "stability byte" was changing the
> 0F to 01. I am no using 1F01FF01 instead of 9F01FF01. I guess I wasn't
> clear enough.
And I wasnt looking hard enough at those characters. :) Interesting
find.. Allen.. any comments?
Craig
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 73+ messages in thread
end of thread, other threads:[~2004-05-17 19:57 UTC | newest]
Thread overview: 73+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[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
2004-05-04 20:38 Jesse Allen
2004-05-04 21:14 ` Craig Bradney
-- strict thread matches above, loose matches on Subject: below --
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-03 8:08 Allen Martin
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-04-13 1:17 IO-APIC on nforce2 Ross Dickson
2004-04-13 7:03 ` Ross Dickson
2004-04-14 1:02 ` IO-APIC on nforce2 [PATCH] Len Brown
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
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-26 11:41 ` 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
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).