summaryrefslogtreecommitdiffstats
path: root/sys/ia64
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2002-04-14 04:33:41 +0000
committerpeter <peter@FreeBSD.org>2002-04-14 04:33:41 +0000
commit1d48dd21daf3e81a88fe38d5fa1361b44ed0474b (patch)
tree9e1bcc11d9105ae2378586f7678c8d79b96a98f9 /sys/ia64
parent0b2395fb4aa76ce82c1923884c2344bdc20bdb0f (diff)
downloadFreeBSD-src-1d48dd21daf3e81a88fe38d5fa1361b44ed0474b.zip
FreeBSD-src-1d48dd21daf3e81a88fe38d5fa1361b44ed0474b.tar.gz
Allow a kernel to be compiled with both SKI and acpica and still
work on real hardware. (SKI used to break the sapic probes)
Diffstat (limited to 'sys/ia64')
-rw-r--r--sys/ia64/ia64/machdep.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/sys/ia64/ia64/machdep.c b/sys/ia64/ia64/machdep.c
index dc046bd..dbd66e4 100644
--- a/sys/ia64/ia64/machdep.c
+++ b/sys/ia64/ia64/machdep.c
@@ -30,6 +30,11 @@
#include "opt_ddb.h"
#include "opt_ski.h"
#include "opt_msgbuf.h"
+#include "opt_acpica.h"
+
+#if !defined(SKI) && !defined(DEV_ACPICA)
+#error "You need the SKI option and/or the acpica device"
+#endif
#include <sys/param.h>
#include <sys/systm.h>
@@ -223,12 +228,19 @@ cpu_startup(dummy)
bufinit();
vm_pager_bufferinit();
-#ifndef SKI
+#ifdef DEV_ACPICA
/*
* Traverse the MADT to discover IOSAPIC and Local SAPIC
* information.
*/
- ia64_probe_sapics();
+ if (!ia64_running_in_simulator())
+ ia64_probe_sapics();
+#else
+ /*
+ * It is an error to boot a SKI-only kernel on hardware.
+ */
+ if (!ia64_running_in_simulator())
+ panic("Mandatory 'device acpica' is missing");
#endif
}
OpenPOWER on IntegriCloud