Subject: Re: IPL_* and IST_* constants
To: Charles M. Hannum <mycroft@mit.edu>
From: Chris G Demetriou <Chris_G_Demetriou@UX2.SP.CS.CMU.EDU>
List: tech-kern
Date: 03/19/1996 08:31:28
>    > Based on current practice, it seems that including either of
>    > <machine/psl.h> or <machine/cpu.h> should do it.  Whether or not
>    > including both should be allowed is outside the scope of my message.
>    > I find it bad form to gratuitously #include extra files, so I'd
>    > recommend not making psl.h idempotent unless there is a pressing need
>    > to.
> 
>    So, is the answer to include them via <machine/cpu.h>?
> 
>    And, if so, is it still mandatory to put them in <machine/psl.h>?
> 
> I already answered both questions in the text you quoted.

Yes, and you also declared your definition to be in "bad form", since
you either have to:
	(1) define the IPL_* and IST_ constants twice, or
	(2) #include psl.h in cpu.h

If people want their drivers to be portable to the Alpha, they will
access these constants by getting them via <machine/cpu.h>.

The alpha actually _does_ have a processor status word, the contents
of which are defined by <machine/psl.h>.  It doesn't need to be
included by <machine/cpu.h>, and so I don't.  I'm not going to
arbitrarily clutter up both headers, to fit a definition of an
interface that's described by its creator as "bogus."  8-)


chris