linux/arch/sparc64
David S. Miller 8047e247c8 [SPARC64]: Virtualize IRQ numbers.
Inspired by PowerPC XICS interrupt support code.

All IRQs are virtualized in order to keep NR_IRQS from needing
to be too large.  Interrupts on sparc64 are arbitrary 11-bit
values, but we don't need to define NR_IRQS to 2048 if we
virtualize the IRQs.

As PCI and SBUS controller drivers build device IRQs, we divy
out virtual IRQ numbers incrementally starting at 1.  Zero is
a special virtual IRQ used for the timer interrupt.

So device drivers all see virtual IRQs, and all the normal
interfaces such as request_irq(), enable_irq(), etc. translate
that into a real IRQ number in order to configure the IRQ.

At this point knowledge of the struct ino_bucket is almost
entirely contained within arch/sparc64/kernel/irq.c  There are
a few small bits in the PCI controller drivers that need to
be swept away before we can remove ino_bucket's definition
out of asm-sparc64/irq.h and privately into kernel/irq.c

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-20 01:22:35 -07:00
..
boot [SPARC64]: Add .gitignore file for sparc64 boot images. 2006-02-05 00:15:11 -08:00
kernel [SPARC64]: Virtualize IRQ numbers. 2006-06-20 01:22:35 -07:00
lib [SPARC64]: Fix missing fold at end of checksums. 2006-06-04 21:32:01 -07:00
math-emu [SPARC64] math-emu: Delete debugging printk left by previous commit. 2006-03-20 01:13:53 -08:00
mm [SPARC64]: Disable preemption during flush_tlb_pending(). 2006-04-30 22:54:27 -07:00
oprofile [PATCH] Move Kprobes and Oprofile to "Instrumentation Support" menu 2005-11-07 07:53:35 -08:00
prom [SPARC64]: Fix system type in /proc/cpuinfo and remove bogus OBP check. 2006-03-20 01:14:25 -08:00
solaris [SPARC64]: Increase top of 32-bit process stack. 2006-03-20 01:16:36 -08:00
Kconfig [SPARC64]: Fix dependencies of HUGETLB_PAGE_SIZE_64K 2006-04-18 16:19:53 -07:00
Kconfig.debug [PATCH] kconfig: clarify memory debug options 2006-03-25 08:22:54 -08:00
Makefile [SPARC64]: Stop putting -finline-limit=XXX into CFLAGS 2005-12-20 14:53:05 -08:00
defconfig [SPARC]: Handle UNWIND_INFO properly. 2006-05-12 12:45:50 -07:00