Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Aug 2003 09:47:06 -0700
From:      Marcel Moolenaar <marcel@xcllnt.net>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   Re: PERFORCE change 36551 for review
Message-ID:  <20030821164706.GA566@dhcp42.pn.xcllnt.net>
In-Reply-To: <XFMail.20030821104047.jhb@FreeBSD.org>
References:  <200308210731.h7L7V0tt040658@repoman.freebsd.org> <XFMail.20030821104047.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Aug 21, 2003 at 10:40:47AM -0400, John Baldwin wrote:
> 
> > 
> > @@ -266,9 +266,18 @@
> >               struct sapic *sa = ia64_sapics[i];
> >               if (irq < sa->sa_base || irq > sa->sa_limit)
> >                       continue;
> > +             /*
> > +              * KLUDGE: Not all interrupts higher or equal to 16 are
> > +              * active low and level sensitive. We don't know yet how
> > +              * to check for this, so we hardcode the 2 cases we have
> > +              * wrong explicitly. This kludge is specific to the HP
> > +              * rx2600...
> > +              */
> 
> Have you tried looking at any interrupt overrides in the MADT?
> That is where the BIOS should tell you which interrupts above 15
> have ISA-like parameters.

I think you said the same 8 or 9 months ago. I think I answered
something like: there's no interrupt override, because those
relate to overriding the legacy interrupts (0-15). It's still
true. There's no interrupt override, because we're not overriding
interrupts.

I also said that I thought it would be related to the fact that
the UARTs are on the acpi bus, to which you replied that ACPI
is not a bus. I didn't disagree, but it's generally much easier
to treat acpi as a bus in these cases. I think this too is still
true. The interrupt trigger and polarity is non-standard because
the UARTs are described by acpi. They are not pci devices. Yet
we assume that any non-laegacy irq (ie any larger than 15) must
be a pci interrupt.

Unfortunately, I couldn't find anywhere in the ACPI spec that
states that devices described by ACPI have edge sensitivity and
are active high. It may be a mistake on HP's part. Or maybe we
should not reprogram the iosapics and assume the firmware has
done that...

I can't recall what Linux does. I'm sure I checked. But I guess
I didn't find anything. I'm not sure I looked very hard...

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030821164706.GA566>