DragonFly-2.3.1.535.g281d9 master sys/platform/pc32/apic mpapic.c sys/platform/pc32/i386 mp_machdep.c mp_madt.c sys/platform/pc32/include smp.h
Sepherosa Ziehau
sephe at crater.dragonflybsd.org
Fri Jun 26 21:01:28 PDT 2009
commit 281d9482759bb075834585452a405a8c9bdf18e7
Author: Sepherosa Ziehau <sephe at dragonflybsd.org>
Date: Sat Jun 27 09:36:42 2009 +0800
Introduce lapic enumerators, which is used to probe and config lapics
lapic enumerator implementation should provide two method:
lapic_probe() -- make sure that if this enumerator is selected, later
lapic enumeration could work. Return error code upon
failure.
lapic_enumerate() -- enumerate lapic and properly configure lapic (currently
only mapping lapic is needed).
lapic enumerator implementation could be registered by calling:
lapic_enumerator_register()
with lapic_enumerator struct. The higher the priority field, the earlier
the lapic enumerator's lapic_probe method will be invoked.
Currently two lapic enumerators are implemented and registered:
- lapic enumerator using MP table
- lapic enumerator using ACPI MADT
ACPI MADT lapic enumerator has higher priority. For testing purpose, ACPI
MADT lapic enumerator's priority could be overridden by setting tunable
hw.madt_lapic_prio to a smaller value (less than 20 currently)
Idea-from: FreeBSD
Summary of changes:
sys/platform/pc32/apic/mpapic.c | 34 ++++++++++++
sys/platform/pc32/i386/mp_machdep.c | 101 ++++++++++++++++++++---------------
sys/platform/pc32/i386/mp_madt.c | 75 +++++++++++++++++++++++++-
sys/platform/pc32/include/smp.h | 21 ++++++--
4 files changed, 180 insertions(+), 51 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/281d9482759bb075834585452a405a8c9bdf18e7
--
DragonFly BSD source repository
More information about the Commits
mailing list