Re: Userspace I/O driver core

From: Dr. David Alan Gilbert
Date: Sat Dec 16 2006 - 10:06:34 EST


* Arjan van de Ven (arjan@xxxxxxxxxxxxx) wrote:
>
> > I understand one still has to write a kernel driver to shut up the irq.
> > How about writing a small bytecode interpreter to make event than
> > unnecessary?
>
> if you do that why not do a real driver.

Because perhaps it is potentially very simple - i.e.
if most of these drivers turn out to be:

if (*loc1 & mask)
{
*loc2=value;
flag we have an interrupt
}

then all you actually need to do is provide a way to
specify loc1, mask, loc2 and value. You could provide
a small handful of mechanisms to suit most simple pieces of hardware
and also provide a definition for the hardware designers to say
'if you make your interrupt registers like this then the software
is dead easy'. A bytecode interpreter seems a little overkill
unless you think that two or three levels of that type of test/mask
could cope with 90%+ of the cases.
There are probably lots of people reinventing the wheel for simple IO
boards and the hardware guys will be making it up each time as well.

Dave
--
-----Open up your eyes, open up your mind, open up your code -------
/ Dr. David Alan Gilbert | Running GNU/Linux on Alpha,68K| Happy \
\ gro.gilbert @ treblig.org | MIPS,x86,ARM,SPARC,PPC & HPPA | In Hex /
\ _________________________|_____ http://www.treblig.org |_______/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/