summaryrefslogtreecommitdiffstats
path: root/sys/ia64/include/md_var.h
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2008-02-04 02:21:33 +0000
committermarcel <marcel@FreeBSD.org>2008-02-04 02:21:33 +0000
commitc1a1c62b2afb3f2602fa7d2c438ce32eacc9f72b (patch)
treeb4eb04d38b3f9012de64a868c443f8563f747654 /sys/ia64/include/md_var.h
parent72d185548f88b6924d5a926aa9b6877ebe113169 (diff)
downloadFreeBSD-src-c1a1c62b2afb3f2602fa7d2c438ce32eacc9f72b.zip
FreeBSD-src-c1a1c62b2afb3f2602fa7d2c438ce32eacc9f72b.tar.gz
Allocate a stack for thread0 and switch to it before calling
mi_startup(). This frees up kstack for static PAL/SAL calls and double-fault handling.
Diffstat (limited to 'sys/ia64/include/md_var.h')
-rw-r--r--sys/ia64/include/md_var.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/ia64/include/md_var.h b/sys/ia64/include/md_var.h
index 738fefa..0520e57 100644
--- a/sys/ia64/include/md_var.h
+++ b/sys/ia64/include/md_var.h
@@ -71,6 +71,11 @@ struct reg;
struct thread;
struct trapframe;
+struct ia64_init_return {
+ uint64_t bspstore;
+ uint64_t sp;
+};
+
void busdma_swi(void);
int copyout_regstack(struct thread *, uint64_t *, uint64_t *);
void cpu_mp_add(u_int, u_int, u_int);
@@ -82,7 +87,7 @@ int ia64_flush_dirty(struct thread *, struct _special *);
uint64_t ia64_get_hcdp(void);
int ia64_highfp_drop(struct thread *);
int ia64_highfp_save(struct thread *);
-void ia64_init(void);
+struct ia64_init_return ia64_init(void);
void ia64_probe_sapics(void);
void interrupt(struct trapframe *);
void map_gateway_page(void);
OpenPOWER on IntegriCloud