acpi no sound, acpi disabled no serial on IBM kiosk
Brock Williams
brock at cottonwoodcomputer.com
Wed Jul 23 22:07:24 UTC 2008
On Wednesday 23 July 2008 8:23:49 am you wrote:
> On Tuesday 22 July 2008 06:52:38 pm Brock Williams wrote:
> > On Tuesday 22 July 2008 4:47:58 pm Nate Lawson wrote:
> > > John Baldwin wrote:
> > > > On Tuesday 22 July 2008 05:28:45 pm Brock Williams wrote:
> > > >> Yeah, I guess I should have said more about the problem. in the
> > > >> ACPI case I do see the devices there, but they don't work. For
> > > >> example, the machine has an elotouch touchscreen which works
> > > >> great w/o ACPI but doesn't with. When I try to cat the device
> > > >> with ACPI enabled, I get nothing. Without acpi I get the
> > > >> expected touchscreen data when touching the screen. We also have
> > > >> a dallas ibutton reader hooked up to another port and it acts the
> > > >> same way.
> > > >
> > > > Hmm, they seem to have all the same I/O resources (ports and
> > > > IRQs), so I don't see anything that would make them not work.
> > > > Also, there isn't anything in the AML for these devices that I can
> > > > see that would help (no _INI or _REG methods, etc.).
> > >
> > > Just to confirm -- you are switching the device names when you "cat
> > > the device", right (sio0, 1, 2)?
> >
> > Yep, I've tried cat'ing every cuad device that shows up, and I can't
> > get data out of any of them when I enable acpi. Also while catting
> > with ACPI I regularly get a message like:
> >
> > sio1: 5 more silo overflows (total 5)
> >
> > Thanks for the help,
>
> Oh, it looks like your brain-damaged BIOS has told us that the
> interrupts are active-low instead of active-high, so you probably aren't
> getting any interrupts. Stupid BIOS writers. A quick hack would be to
> #if 0 the call to 'acpi_config_intr()' in acpi_alloc_resource() in
> sys/dev/acpica/acpi.c. You could also patch your ASL by fixing each
> "PNP0501" device like so:
>
> --- brock-ibm-anyplace.asl.orig 2008-07-23 10:20:57.000000000 -0400
> +++ brock-ibm-anyplace.asl 2008-07-23 10:21:29.000000000 -0400
> @@ -5307,7 +5307,7 @@
> 0x00, // Alignment
> 0x08, // Length
> _Y0F)
> - IRQ (Edge, ActiveLow, Shared, _Y10)
> + IRQ (Edge, ActiveHigh, Shared, _Y10)
> {}
> })
> CreateByteField (BUF1,
> \_SB.PCI0.UAR1._CRS._Y0F._MIN, IOLO)
>
> Unfortunately, there are some systems where we really need the
> acpi_config_intr() to work (some serial ports on ia64 machines have
> interrupts that are level/low like PCI interrupts, and w/o the
> acpi_config_intr() call they end up being edge/high), so we can't just
> disable them altogether in FreeBSD proper.
THANK YOU!!! Patching the ASL like you suggested worked like a charm. Now
all the ports seem to be working great.
I really appreciate the help,
Brock
--
Brock Williams brock at cottonwoodcomputer.com
Cottonwood Computer Solutions, Inc.
www.cotcomsol.com 406-896-4910
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : http://lists.freebsd.org/pipermail/freebsd-acpi/attachments/20080723/7cb4f9c1/attachment.pgp
More information about the freebsd-acpi
mailing list