git: intr: Support upto 192 IDT entries in ipl and intr vector asm code
Sepherosa Ziehau
sephe at crater.dragonflybsd.org
Sun Jan 9 03:30:39 PST 2011
commit c263294b570bc9641fe5184b066fd801803046a4
Author: Sepherosa Ziehau <sephe at dragonflybsd.org>
Date: Thu Jan 6 23:53:19 2011 +0800
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
Summary of changes:
sys/cpu/i386/include/asmacros.h | 1 +
sys/platform/pc32/apic/apic_abi.c | 2 +-
sys/platform/pc32/apic/apic_vector.s | 18 ++++---
sys/platform/pc32/i386/genassym.c | 2 +-
sys/platform/pc32/i386/globals.s | 4 +-
sys/platform/pc32/i386/mp_machdep.c | 2 +-
sys/platform/pc32/icu/icu_abi.c | 2 +-
sys/platform/pc32/icu/icu_vector.s | 10 ++--
sys/platform/pc32/include/globaldata.h | 3 +-
sys/platform/pc32/isa/ipl.s | 93 +++++++++++++++++++++++++------
10 files changed, 100 insertions(+), 37 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/c263294b570bc9641fe5184b066fd801803046a4
--
DragonFly BSD source repository
More information about the Commits
mailing list