On 22 Mar 2006, at 08:36, Arjan van de Ven wrote: >> +#include <linux/interrupt.h> >> +#include <linux/sched.h> >> +#include <linux/kernel_stat.h> >> +#include <linux/version.h> > > this highly looks that it's not possible to be used outside the linux > kernel so the license is odd It can't be used directly, but other OS ports steal fairly directly from this file (and others). For example OpenSolaris and the BSDs. >> +static int find_unbound_irq(void) >> +{ >> + int irq; >> + >> + for (irq = 0; irq < NR_IRQS; irq++) >> + if (irq_bindcount[irq] == 0) >> + break; >> + >> + if (irq == NR_IRQS) { >> + printk(KERN_ERR "No available IRQ to bind to: increase >> NR_IRQS!\n"); > > there is no way to share interrupts? A shame 256 allocatable IRQs seems plenty to be getting on with. Shared IRQs can certainly be added later -- there are no hidden gotchas I'm pretty sure. -- Keir