Re: Build failure for evbarm ifpga_intr.h

On Mon, Apr 27, 2009 at 10:31:48PM +0000, Andrew Doran wrote:
> On Mon, Apr 27, 2009 at 05:19:08PM -0500, David Young wrote:
>
> > IIUC, Izumi Tsutsui suggests fixing the circular dependency by
> > relocating the definition of ipl_cookie_t from <machine/intr.h> to
> > (just for example) <machine/types.h> and eliminating the #include
> > <machine/intr.h> from <sys/mutex.h>. Sounds ok to me.
>
> IPL_* constants are needed for mutex_init(). All this pain is due to intr.h
> including cpu.h because of inlines, or something like that, right? Is there
> a problem with making the inlines functions proper?
The proximal cause of the pain is that I #included <sys/mutex.h> in
<sys/device.h>. <sys/mutex.h> #includes <machine/intr.h> that, on
some systems, #includes a device driver's xxxvar.h that #includes
<sys/device.h>.
ISTM that the root cause of the pain is that <machine/intr.h> #includes
a driver's xxxvar.h, but that is just my interpretation.
Dave
--
David Young OJC Technologies
dyoung%ojctech.com@localhost Urbana, IL * (217) 278-3933