intr: Support upto 192 IDT entries in ipl and intr vector asm code
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Thu, 6 Jan 2011 15:53:19 +0000 (23:53 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Sun, 9 Jan 2011 11:22:58 +0000 (19:22 +0800)
commitc263294b570bc9641fe5184b066fd801803046a4
tree08735f15b3e8cb6147ce883626d96de1fc8338c2
parent7fb259ca9e17fb9a4f7fef81f1bcbadfe2e5e2c9
intr: Support upto 192 IDT entries in ipl and intr vector asm code

Remove 32bits gd_fpending mask and add 32bits gd_ipending mask array
which has 6 elements.  This allows 192 intrs to be pending.

192 is chosen, because the first 32 entries in IDT is reserved, while
the last 32 entries in IDT are used for IPIs.

This paves the way toward correcting interrupt routing using MPTable
or ACPI and supporting MSI and MSI-X
sys/cpu/i386/include/asmacros.h
sys/platform/pc32/apic/apic_abi.c
sys/platform/pc32/apic/apic_vector.s
sys/platform/pc32/i386/genassym.c
sys/platform/pc32/i386/globals.s
sys/platform/pc32/i386/mp_machdep.c
sys/platform/pc32/icu/icu_abi.c
sys/platform/pc32/icu/icu_vector.s
sys/platform/pc32/include/globaldata.h
sys/platform/pc32/isa/ipl.s