summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2008-12-30 00:54:25 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2008-12-30 00:54:25 +0000
commit5abfd79ac19feead6f876e085f7723c70b55ac02 (patch)
tree5a73b9f8ac77e9e6666189e62a6a5130a8bd19d1 /sys/arch
parent195570ac98e1b031722769df554354e78699aa25 (diff)
Add domain state related PROM calls.
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/sparc64/include/sparc64.h3
-rw-r--r--sys/arch/sparc64/sparc64/ofw_machdep.c19
2 files changed, 20 insertions, 2 deletions
diff --git a/sys/arch/sparc64/include/sparc64.h b/sys/arch/sparc64/include/sparc64.h
index 591808a66c4..80441390ff2 100644
--- a/sys/arch/sparc64/include/sparc64.h
+++ b/sys/arch/sparc64/include/sparc64.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: sparc64.h,v 1.12 2008/08/09 21:06:05 kettenis Exp $ */
+/* $OpenBSD: sparc64.h,v 1.13 2008/12/30 00:54:24 kettenis Exp $ */
/* $NetBSD: sparc64.h,v 1.3 2000/10/20 05:47:03 mrg Exp $ */
/*
@@ -57,6 +57,7 @@ void prom_start_cpu_by_cpuid(int cpu, void *func, long arg);
const char *prom_serengeti_set_console_input(const char *);
time_t prom_opl_get_tod(void);
uint64_t prom_set_sun4v_api_version(uint64_t, uint64_t, uint64_t, uint64_t *);
+void prom_sun4v_soft_state_supported(void);
/*
* Debug
diff --git a/sys/arch/sparc64/sparc64/ofw_machdep.c b/sys/arch/sparc64/sparc64/ofw_machdep.c
index 201890f2722..d9fe8270e64 100644
--- a/sys/arch/sparc64/sparc64/ofw_machdep.c
+++ b/sys/arch/sparc64/sparc64/ofw_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofw_machdep.c,v 1.29 2008/08/09 21:06:05 kettenis Exp $ */
+/* $OpenBSD: ofw_machdep.c,v 1.30 2008/12/30 00:54:24 kettenis Exp $ */
/* $NetBSD: ofw_machdep.c,v 1.16 2001/07/20 00:07:14 eeh Exp $ */
/*
@@ -813,6 +813,23 @@ prom_set_sun4v_api_version(uint64_t api_group, uint64_t major,
return (uint64_t)args.status;
}
+void
+prom_sun4v_soft_state_supported(void)
+{
+ static struct {
+ cell_t name;
+ cell_t nargs;
+ cell_t nreturns;
+ } args;
+
+ args.name = ADR2CELL("SUNW,set-sun4v-api-version");
+ args.nargs = 0;
+ args.nreturns = 0;
+
+ openfirmware(&args);
+}
+
+
#ifdef DEBUG
int ofmapintrdebug = 0;
#define DPRINTF(x) do { if (ofmapintrdebug) printf x; } while (0)