nForce3 (Compaq R3000) timer fix

John Baldwin jhb at FreeBSD.org
Mon Jan 31 14:54:45 PST 2005


On Wednesday 26 January 2005 11:49 am, Jung-uk Kim wrote:
> This is (hopefully) the last patch of the series, which fixes infamous
> '8254 timer not connected to IO-APIC' problem for nForce2+.  Linux
> people had a hack here:
>
> http://lkml.org/lkml/2003/12/21/7
>
> (Note: 2.6.10 has more refined version.)
>
> The attached patch requires the previous 'skip_timer_override' hack
> posted here:
>
> http://docs.freebsd.org/cgi/mid.cgi?200501192214.27401.jkim
>
> After the patch, you need to set 'hw.apic.skip_set_extint=1' from
> loader or loader.conf.  Be careful with spelling; this is 'apic', not
> 'acpi' this time. ;-)
>
> With verbose boot logging, we should see:
>
> 	ioapic0: intpin 0 -> ISA IRQ 0 (edge, high)
>
> instead of:
>
> 	ioapic0: Routing external 8259A's -> intpin 0
> 	ioapic0: intpin 0 -> ExtINT (edge, high)
>
> I was able to run this laptop overnight without 'device atpic'. ;-)  I
> think somebody (jhb and peter, I guess) should double check if this
> is okay.  I tried many combinations including 'options SMP' and all
> seemed to be fine so far.
>
> Finally I can run this laptop at full speed (2 GHz) under heavy load
> with 'acpi_ppc' driver!
>
> http://www.spa.is.uec.ac.jp/~nfukuda/software/

Ok,. this answers my earlier question, pin 0 is really ISA IRQ 0 and not 
ExtINT.  Unfortunately, there's no good way to know this from MADT or MPTable 
except using some sort of BIOS blacklist.  I want to tinker with this 
slightly so we can require just one hint in the MADT code to handle this 
though.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the freebsd-amd64 mailing list