From owner-freebsd-acpi@FreeBSD.ORG Wed Nov 30 19:49:41 2005 Return-Path: X-Original-To: freebsd-acpi@freebsd.org Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8FBEA16A420; Wed, 30 Nov 2005 19:49:41 +0000 (GMT) (envelope-from jpeg@thilelli.net) Received: from smtp.thilelli.net (smtp.thilelli.net [213.41.129.161]) by mx1.FreeBSD.org (Postfix) with ESMTP id 91BD543D68; Wed, 30 Nov 2005 19:49:40 +0000 (GMT) (envelope-from jpeg@thilelli.net) Received: from localhost (localhost [127.0.0.1]) by bento.thilelli.net (Postfix) with ESMTP id 31A21564C2; Wed, 30 Nov 2005 20:49:38 +0100 (CET) Received: from bento.thilelli.net ([127.0.0.1]) by localhost (bento.thilelli.net [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 50428-03-2; Wed, 30 Nov 2005 20:49:36 +0100 (CET) Received: from webmail.thilelli.net (localhost [127.0.0.1]) by bento.thilelli.net (Postfix) with ESMTP id A2350564C1; Wed, 30 Nov 2005 20:49:36 +0100 (CET) Received: from 192.168.1.20 (SquirrelMail authenticated user jgabel) by webmail.thilelli.net with HTTP; Wed, 30 Nov 2005 20:49:36 +0100 (CET) Message-ID: <59463.192.168.1.20.1133380176.squirrel@webmail.thilelli.net> In-Reply-To: <200511291650.08922.jhb@freebsd.org> References: <49704.192.168.1.18.1113475314.squirrel@webmail.thilelli.net> <200504150217.37985.jhb@FreeBSD.org> <60391.192.168.1.18.1113571878.squirrel@webmail.thilelli.net> <200511291650.08922.jhb@freebsd.org> Date: Wed, 30 Nov 2005 20:49:36 +0100 (CET) From: "Julien Gabel" To: "John Baldwin" User-Agent: SquirrelMail/1.4.5 MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal X-Virus-Scanned: amavisd-new at thilelli.net Cc: freebsd-acpi@freebsd.org, freebsd-usb@freebsd.org, bug-followup@freebsd.org Subject: Re: usb/74989: (regression) Lost USB support between 5.2.1-RELEASE and 5.3-RELEASE on K7T266 Pro2. X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: jpeg@thilelli.net List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 30 Nov 2005 19:49:41 -0000 >>>> I made some progress here. After playing with BIOS settings, i am now >>>> able to: >>>> - Boot with ACPI enable (shutdown -p works as expected now); >>>> - Use USB devices. >>>> >>>> In order to do that, i had to totally disable "APIC Function" in the >>>> BIOS. With "APIC Function" enabled, neither version 1.4 nor 1.1 of >>>> the "MPS Table Version" settings solved my problem. >>>> >>>> So, although i need to disable "APIC Function", all seems to works >>>> correctly together: ACPI support and USB support. As a side note, i >>>> did not encountered anymore the interrupt storm on the uhci USB host >>>> controller driver. >>>> >>>> Maybe can someone explain me what may be wrong with "APIC Function", >>>> and if there is some drawbacks to disable it (or what is the purpose >>>> of this setting)? >>> APIC is used to route interrupts differently. You can also disable it >>> from the loader with 'hint.apic.0.disabled=1'. I've looked at your >>> dmesg's, and the problem is that in the ACPI case the IRQ 10 that your >>> USB controllers are using is configured as an ISA IRQ (edge/high). >>> For now you can either disable APIC or ACPI as a workaround until I >>> figure out a better solution. >> Thanks. I effectively prefer turn APIC off via the loader configuration >> than from the BIOS settings, i think it is far more easily to remember >> what i have done from this place. >> I can try patch(es) or make test(s) without problem on this machine, if >> any. Thanks a lot. > Actually, can you try this patch: > > Index: acpi_pci_link.c > =================================================================== > RCS file: /host/cvs/usr/cvs/src/sys/dev/acpica/acpi_pci_link.c,v > retrieving revision 1.48 > diff -u -r1.48 acpi_pci_link.c > --- acpi_pci_link.c 1 Nov 2005 22:44:07 -0000 1.48 > +++ acpi_pci_link.c 28 Nov 2005 13:03:29 -0000 > @@ -859,7 +859,18 @@ > if (!link->l_routed && > PCI_INTERRUPT_VALID(link->l_irq)) { > link->l_routed = TRUE; > + /* > + * Some BIOSen are broken and actually set > + * some interrupts to active-high with level > + * trigger. Workaround this by hard-coding > + * active-low and level-trigger. > + */ > +#if 0 > acpi_config_intr(dev, resource); > +#else > + BUS_CONFIG_INTR(dev, link->l_irq, > + INTR_TRIGGER_LEVEL, INTR_POLARITY_LOW); > +#endif > pci_link_interrupt_weights[link->l_irq] += > link->l_references; > } I applied this patch, rebuild and installed the kernel, set the loader.conf directive `hint.apic.0.disabled' to "0" and reboot on the system. Sadly, the same behaviour happened (as before), i.e. USB mouse simply hang, USB thumbdrive doesn't work, etc. The patch was applied on src/sys/dev/acpica/acpi_pci_link.c before your last commit on RELENG_6 (version 1.44.2.4, 2005/11/30 16:03:55). Don't know if this may change something or not in this case. -- -jpeg.