usb/74989: (regression) Lost USB support between 5.2.1-RELEASE and 5.3-RELEASE on K7T266 Pro2.

John Baldwin jhb at freebsd.org
Sat Dec 3 21:27:33 GMT 2005


On Friday 02 December 2005 05:37 pm, Julien Gabel wrote:
> > Ok, yours is a more odd case. :)  This is debatably a bug in your ASL,
> > but I think we can work around it.  It is routing your USB interrupts
> > to IRQ 10 but is not using a link device to do it, and it is not
> > including an INTR_OVERRIDE entry in the MADT to change IRQ 10 from the
> > default of edge/trigger to level/low.  The patch below forces all
> > hard-wired PCI interrupts routed via ACPI to be level/low.  This patch
> > should apply both to HEAD and 6.x and maybe 5.x.
> >
> > Index: acpi_pcib.c
> > [...]
>
> Ok.  I think you finally got it this time.  Applied this patch against
> RELENG_6 and it seems to work fine now.  I build and installed the kernel,
> set the loader.conf directives
>  hint.acpi.0.disabled to 0
>  hint.apic.0.disabled to 0
> and reboot on the system... it works well now, thank you ;)

Ok, fix committed.  It will be in 6.1 as well.

> >> More precisely, here is a little tab... to be more accurate (i hope):
> >>
> >> ---------------------------------------
> >>  USB support   |   ACPI   |   APIC    |
> >>                ------------------------
> >>
> >>                | on | off | on | off  |
> >>
> >> ---------------------------------------
> >> Did not boot(*)|    |  XX |    |  XX  |
> >> ---------------------------------------
> >> (*) The boot disk seems not be able to be used for the root mount, i.e.
> >> ufs:/dev/ad0s1a in my case.
> >
> > If you could get a verbose dmesg for this case using a serial console I'd
> > be interested in looking at that too.
>
> Certainly!  The output can be found at:
>  http://www.thilelli.net/~jgabel/store/pub/PR/74989/serial.dmesg.boot-v
>
> Note: the kernel used for this boot was the just-previously-patched one.

Ok, what happens here is that the $PIR code ends up using IRQ 14 for a 
virgin-routed link.  You can just use a tunable to override this like so:

hw.pci.link.0x1.irq=12

That should make the vga adapter use irq 12 rather than irq 14.  If you have a 
BIOS setting that says 'enable VGA irq' you could also try turning that on.  
However, you'd probably much rather be running with ACPI + APIC enabled 
anyway.

-- 
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-usb mailing list