summaryrefslogtreecommitdiff
path: root/sys/arch/macppc
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2007-12-04 22:36:40 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2007-12-04 22:36:40 +0000
commitce942d96626420b63213c674a7d11a8590d972bc (patch)
treee5235b8fe52661dbcf4464a42b491af76fc6d428 /sys/arch/macppc
parent5cbc5dc1bbfc5e16afd43ddaaaa3f5799ba0dda8 (diff)
Remove remains of the idle pcb/stack.
ok miod@
Diffstat (limited to 'sys/arch/macppc')
-rw-r--r--sys/arch/macppc/macppc/cpu.c20
-rw-r--r--sys/arch/macppc/macppc/genassym.cf3
-rw-r--r--sys/arch/macppc/macppc/locore.S4
3 files changed, 7 insertions, 20 deletions
diff --git a/sys/arch/macppc/macppc/cpu.c b/sys/arch/macppc/macppc/cpu.c
index c3ca93afd75..9b2aa5676cc 100644
--- a/sys/arch/macppc/macppc/cpu.c
+++ b/sys/arch/macppc/macppc/cpu.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cpu.c,v 1.44 2007/10/10 15:53:52 art Exp $ */
+/* $OpenBSD: cpu.c,v 1.45 2007/12/04 22:36:39 kettenis Exp $ */
/*
* Copyright (c) 1997 Per Fogelstrom
@@ -554,14 +554,13 @@ struct cpu_hatch_data {
};
volatile struct cpu_hatch_data *cpu_hatch_data;
-volatile int cpu_hatch_stack;
+volatile void *cpu_hatch_stack;
int
cpu_spinup(struct device *self, struct cpu_info *ci)
{
volatile struct cpu_hatch_data hatch_data, *h = &hatch_data;
int i;
- struct pcb *pcb;
struct pglist mlist;
struct vm_page *m;
int error;
@@ -570,10 +569,9 @@ cpu_spinup(struct device *self, struct cpu_info *ci)
u_char *reset_cpu;
/*
- * Allocate some contiguous pages for the idle PCB and stack
+ * Allocate some contiguous pages for the interrupt stack
* from the lowest 256MB (because bat0 always maps it va == pa).
*/
- size += USPACE;
size += INTSTK;
size += 4096; /* SPILLSTK */
@@ -588,16 +586,8 @@ cpu_spinup(struct device *self, struct cpu_info *ci)
cp = (char *)VM_PAGE_TO_PHYS(m);
bzero(cp, size);
- pcb = (struct pcb *)cp;
- ci->ci_idle_pcb = pcb;
- ci->ci_intstk = cp + USPACE + INTSTK;
-
- /*
- * Initialize the idle stack pointer, reserving space for an
- * (empty) trapframe (XXX is the trapframe really necessary?)
- */
- pcb->pcb_sp = (paddr_t)pcb + USPACE - sizeof(struct trapframe);
- cpu_hatch_stack = ci->ci_idle_pcb->pcb_sp;
+ ci->ci_intstk = cp + INTSTK;
+ cpu_hatch_stack = ci->ci_intstk - sizeof(struct trapframe);
h->ci = ci;
h->running = 0;
diff --git a/sys/arch/macppc/macppc/genassym.cf b/sys/arch/macppc/macppc/genassym.cf
index 2efd74a41b6..9e1f850e0e5 100644
--- a/sys/arch/macppc/macppc/genassym.cf
+++ b/sys/arch/macppc/macppc/genassym.cf
@@ -1,4 +1,4 @@
-# $OpenBSD: genassym.cf,v 1.15 2007/10/10 15:53:52 art Exp $
+# $OpenBSD: genassym.cf,v 1.16 2007/12/04 22:36:39 kettenis Exp $
#
# Copyright (c) 1982, 1990 The Regents of the University of California.
# All rights reserved.
@@ -84,7 +84,6 @@ struct cpu_info
member ci_curproc
member ci_curpcb
member ci_curpm
-member ci_idle_pcb
member ci_astpending
member ci_want_resched
member ci_cpl
diff --git a/sys/arch/macppc/macppc/locore.S b/sys/arch/macppc/macppc/locore.S
index e4e471d5354..eeb12cc195d 100644
--- a/sys/arch/macppc/macppc/locore.S
+++ b/sys/arch/macppc/macppc/locore.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: locore.S,v 1.34 2007/10/10 15:56:20 deraadt Exp $ */
+/* $OpenBSD: locore.S,v 1.35 2007/12/04 22:36:39 kettenis Exp $ */
/* $NetBSD: locore.S,v 1.2 1996/10/16 19:33:09 ws Exp $ */
/*
@@ -110,8 +110,6 @@ start:
mtsprg 0,%r9
addi %r8,%r8,INTSTK
stw %r8,CI_INTSTK(%r9)
- stw %r8,CI_IDLE_PCB(%r9)
- addi %r8,%r8,USPACE /* space for idle_u */
li %r0,-1
stw %r0,CI_INTRDEPTH(%r9)
lis %r9,_C_LABEL(proc0paddr)@ha