diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2008-03-08 15:42:27 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2008-03-08 15:42:27 +0000 |
commit | 5d3e200ed8e7fc450c0ce889def1783cf5b9a709 (patch) | |
tree | c991d050310453f0249135f6033d549459875d8c | |
parent | 99bbb0d89ab70df2381a27cc37bd3f788e7bb42c (diff) |
SUNW,set-trap-table takes an extra argument on sun4v; sun4u doesn't seem to
mind.
tested by miod@
-rw-r--r-- | sys/arch/sparc64/include/sparc64.h | 4 | ||||
-rw-r--r-- | sys/arch/sparc64/sparc64/ofw_machdep.c | 9 |
2 files changed, 8 insertions, 5 deletions
diff --git a/sys/arch/sparc64/include/sparc64.h b/sys/arch/sparc64/include/sparc64.h index a75189ffa83..701110e9677 100644 --- a/sys/arch/sparc64/include/sparc64.h +++ b/sys/arch/sparc64/include/sparc64.h @@ -1,4 +1,4 @@ -/* $OpenBSD: sparc64.h,v 1.7 2007/09/08 17:48:12 kettenis Exp $ */ +/* $OpenBSD: sparc64.h,v 1.8 2008/03/08 15:42:26 kettenis Exp $ */ /* $NetBSD: sparc64.h,v 1.3 2000/10/20 05:47:03 mrg Exp $ */ /* @@ -39,7 +39,7 @@ struct mem_region { u_int64_t size; }; -int prom_set_trap_table(vaddr_t tba); +int prom_set_trap_table(vaddr_t tba, paddr_t mmfsa); paddr_t prom_vtop(vaddr_t vaddr); vaddr_t prom_claim_virt(vaddr_t vaddr, int len); vaddr_t prom_alloc_virt(int len, int align); diff --git a/sys/arch/sparc64/sparc64/ofw_machdep.c b/sys/arch/sparc64/sparc64/ofw_machdep.c index 5ab6c580cb6..4e3f0e1b62d 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.23 2008/01/10 22:46:48 deraadt Exp $ */ +/* $OpenBSD: ofw_machdep.c,v 1.24 2008/03/08 15:42:26 kettenis Exp $ */ /* $NetBSD: ofw_machdep.c,v 1.16 2001/07/20 00:07:14 eeh Exp $ */ /* @@ -105,20 +105,23 @@ get_memory_handle() * Point prom to our trap table. This stops the prom from mapping us. */ int -prom_set_trap_table(tba) +prom_set_trap_table(tba, mmfsa) vaddr_t tba; + paddr_t mmfsa; { struct { cell_t name; cell_t nargs; cell_t nreturns; cell_t tba; + cell_t mmfsa; } args; args.name = ADR2CELL("SUNW,set-trap-table"); - args.nargs = 1; + args.nargs = 2; args.nreturns = 0; args.tba = ADR2CELL(tba); + args.mmfsa = ADR2CELL(mmfsa); return openfirmware(&args); } |