Date: Thu, 11 Jul 2013 10:14:42 -0400 From: John Baldwin <jhb@freebsd.org> To: freebsd-hackers@freebsd.org Cc: Robert Ames <robertames@hotmail.com> Subject: Re: Intel D2500CC serial ports Message-ID: <201307111014.42903.jhb@freebsd.org> In-Reply-To: <BLU177-W9398FC7BF05E2069A4961C9700@phx.gbl> References: <BLU177-W9398FC7BF05E2069A4961C9700@phx.gbl>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday, June 30, 2013 1:24:27 pm Robert Ames wrote: > I just picked up an Intel D2500CCE motherboard and was disappointed > to find the serial ports didn't work. There has been discussion > about this problem here: > > http://lists.freebsd.org/pipermail/freebsd-current/2013-April/040897.html > http://lists.freebsd.org/pipermail/freebsd-current/2013-May/042088.html > > As seen in the second link, Juergen Weiss was able to work around > the problem. This patch (for 8.4-RELEASE amd64) makes all 4 serial > ports functional. > > --- /usr/src/sys/amd64/amd64/io_apic.c.orig 2013-06-02 13:23:05.000000000 -0500 > +++ /usr/src/sys/amd64/amd64/io_apic.c 2013-06-28 18:52:03.000000000 -0500 > @@ -452,6 +452,10 @@ > KASSERT(!(trig == INTR_TRIGGER_CONFORM || pol == INTR_POLARITY_CONFORM), > ("%s: Conforming trigger or polarity\n", __func__)); > > + if (trig == INTR_TRIGGER_EDGE && pol == INTR_POLARITY_LOW) { > + pol = INTR_POLARITY_HIGH; > + } > + Hmm, so this is your BIOS doing the wrong thing in its ASL. Maybe try this: --- //depot/user/jhb/acpipci/dev/acpica/acpi_resource.c 2011-07-22 17:59:31.000000000 0000 +++ /home/jhb/work/p4/acpipci/dev/acpica/acpi_resource.c 2011-07-22 17:59:31.000000000 0000 @@ -141,6 +141,10 @@ default: panic("%s: bad resource type %u", __func__, res->Type); } +#if defined(__amd64__) || defined(__i386__) + if (irq < 16 && trig == ACPI_EDGE_SENSITIVE && pol == ACPI_ACTIVE_LOW) + pol = ACPI_ACTIVE_HIGH; +#endif BUS_CONFIG_INTR(dev, irq, (trig == ACPI_EDGE_SENSITIVE) ? INTR_TRIGGER_EDGE : INTR_TRIGGER_LEVEL, (pol == ACPI_ACTIVE_HIGH) ? INTR_POLARITY_HIGH : INTR_POLARITY_LOW); -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307111014.42903.jhb>