summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
authornwhitehorn <nwhitehorn@FreeBSD.org>2016-01-10 18:00:01 +0000
committernwhitehorn <nwhitehorn@FreeBSD.org>2016-01-10 18:00:01 +0000
commit9b316d0daf8e59d9ec672d884b2f386f8e65bf75 (patch)
tree138dded6ced8b92a304a99f91f2713479cfc82a5 /sys/powerpc
parentef0b7e48a5cfb292f8c25124811d658549b982d2 (diff)
downloadFreeBSD-src-9b316d0daf8e59d9ec672d884b2f386f8e65bf75.zip
FreeBSD-src-9b316d0daf8e59d9ec672d884b2f386f8e65bf75.tar.gz
Remove dead code and dead comments, most notably the implemenation of the
now-obsolete setfault(). No NetBSD code exists in the AIM locore files, so update the copyrights there.
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/aim/locore32.S71
-rw-r--r--sys/powerpc/aim/locore64.S99
-rw-r--r--sys/powerpc/aim/trap_subr64.S9
-rw-r--r--sys/powerpc/booke/booke_machdep.c3
-rw-r--r--sys/powerpc/booke/locore.S23
-rw-r--r--sys/powerpc/powerpc/setjmp.S1
6 files changed, 18 insertions, 188 deletions
diff --git a/sys/powerpc/aim/locore32.S b/sys/powerpc/aim/locore32.S
index 477ae88..b14215c 100644
--- a/sys/powerpc/aim/locore32.S
+++ b/sys/powerpc/aim/locore32.S
@@ -1,8 +1,7 @@
/* $FreeBSD$ */
-/* $NetBSD: locore.S,v 1.24 2000/05/31 05:09:17 thorpej Exp $ */
/*-
- * Copyright (C) 2001 Benno Rice
+ * Copyright (C) 2010-2016 Nathan Whitehorn
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -14,37 +13,7 @@
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
- * THIS SOFTWARE IS PROVIDED BY Benno Rice ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-/*-
- * Copyright (C) 1995, 1996 Wolfgang Solfrank.
- * Copyright (C) 1995, 1996 TooLs GmbH.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by TooLs GmbH.
- * 4. The name of TooLs GmbH may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ -95,15 +64,7 @@ GLOBAL(tmpstk)
btext:
/*
- * This symbol is here for the benefit of kvm_mkdb, and is supposed to
- * mark the start of kernel text.
- */
- .globl kernel_text
-kernel_text:
-
-/*
- * Startup entry. Note, this must be the first thing in the text
- * segment!
+ * Main kernel entry point.
*/
.text
.globl __start
@@ -148,29 +109,7 @@ __start:
stw %r3, 0(%r1)
bl mi_startup
- /* If mi_startup somehow returns, exit. This would be bad. */
- b OF_exit
-
-/*
- * int setfault()
- *
- * Similar to setjmp to setup for handling faults on accesses to user memory.
- * Any routine using this may only call bcopy, either the form below,
- * or the (currently used) C code optimized, so it doesn't use any non-volatile
- * registers.
- */
- .globl setfault
-setfault:
- mflr 0
- mfcr 12
- mfsprg 4,0
- lwz 4,TD_PCB(2) /* curthread = r2 */
- stw 3,PCB_ONFAULT(4)
- stw 0,0(3)
- stw 1,4(3)
- stw 2,8(3)
- stmw 12,12(3)
- xor 3,3,3
- blr
+ /* mi_startup() does not return */
+ b .
#include <powerpc/aim/trap_subr32.S>
diff --git a/sys/powerpc/aim/locore64.S b/sys/powerpc/aim/locore64.S
index 7f93793..cd64b5f 100644
--- a/sys/powerpc/aim/locore64.S
+++ b/sys/powerpc/aim/locore64.S
@@ -1,8 +1,7 @@
/* $FreeBSD$ */
-/* $NetBSD: locore.S,v 1.24 2000/05/31 05:09:17 thorpej Exp $ */
/*-
- * Copyright (C) 2001 Benno Rice
+ * Copyright (C) 2010-2016 Nathan Whitehorn
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -14,7 +13,7 @@
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
- * THIS SOFTWARE IS PROVIDED BY Benno Rice ``AS IS'' AND ANY EXPRESS OR
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ -24,36 +23,8 @@
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-/*-
- * Copyright (C) 1995, 1996 Wolfgang Solfrank.
- * Copyright (C) 1995, 1996 TooLs GmbH.
- * All rights reserved.
*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by TooLs GmbH.
- * 4. The name of TooLs GmbH may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ * $FreeBSD$
*/
#include "assym.s"
@@ -69,13 +40,6 @@
.abiversion _CALL_ELF
#endif
-/* Locate the per-CPU data structure */
-#define GET_CPUINFO(r) \
- mfsprg0 r
-#define GET_TOCBASE(r) \
- li r,TRAP_TOCBASE; /* Magic address for TOC */ \
- ld r,0(r)
-
/* Glue for linker script */
.globl kernbase
.set kernbase, KERNBASE
@@ -102,15 +66,7 @@ TOC_ENTRY(tmpstk)
btext:
/*
- * This symbol is here for the benefit of kvm_mkdb, and is supposed to
- * mark the start of kernel text.
- */
- .globl kernel_text
-kernel_text:
-
-/*
- * Startup entry. Note, this must be the first thing in the text
- * segment!
+ * Main kernel entry point.
*
* Calling convention:
* r3: Flattened Device Tree pointer (or zero)
@@ -169,50 +125,7 @@ ASENTRY_NOPROF(__start)
bl mi_startup
nop
- /* If this returns (it won't), go back to firmware */
- b OF_exit
- nop
-
-/*
- * int setfault()
- *
- * Similar to setjmp to setup for handling faults on accesses to user memory.
- * Any routine using this may only call bcopy, either the form below,
- * or the (currently used) C code optimized, so it doesn't use any non-volatile
- * registers.
- */
-ASENTRY_NOPROF(setfault)
- mflr 0
- mfcr 12
- mfsprg 4,0
- ld 4,TD_PCB(13) /* curthread = r13 */
- std 3,PCB_ONFAULT(4)
- std 0,0(3)
- std 1,8(3)
- std 2,16(3)
-
- std %r12,24(%r3) /* Save the non-volatile GP regs. */
- std %r13,24+1*8(%r3)
- std %r14,24+2*8(%r3)
- std %r15,24+3*8(%r3)
- std %r16,24+4*8(%r3)
- std %r17,24+5*8(%r3)
- std %r18,24+6*8(%r3)
- std %r19,24+7*8(%r3)
- std %r20,24+8*8(%r3)
- std %r21,24+9*8(%r3)
- std %r22,24+10*8(%r3)
- std %r23,24+11*8(%r3)
- std %r24,24+12*8(%r3)
- std %r25,24+13*8(%r3)
- std %r26,24+14*8(%r3)
- std %r27,24+15*8(%r3)
- std %r28,24+16*8(%r3)
- std %r29,24+17*8(%r3)
- std %r30,24+18*8(%r3)
- std %r31,24+19*8(%r3)
-
- xor 3,3,3
- blr
+ /* Unreachable */
+ b .
#include <powerpc/aim/trap_subr64.S>
diff --git a/sys/powerpc/aim/trap_subr64.S b/sys/powerpc/aim/trap_subr64.S
index 7ad0a70..587086e 100644
--- a/sys/powerpc/aim/trap_subr64.S
+++ b/sys/powerpc/aim/trap_subr64.S
@@ -39,9 +39,12 @@
* #include <powerpc/aim/trap_subr.S>
*/
-/*
- * Save/restore segment registers
- */
+/* Locate the per-CPU data structure */
+#define GET_CPUINFO(r) \
+ mfsprg0 r
+#define GET_TOCBASE(r) \
+ li r,TRAP_TOCBASE; /* Magic address for TOC */ \
+ ld r,0(r)
/*
* Restore SRs for a pmap
diff --git a/sys/powerpc/booke/booke_machdep.c b/sys/powerpc/booke/booke_machdep.c
index a019597..78ca12f 100644
--- a/sys/powerpc/booke/booke_machdep.c
+++ b/sys/powerpc/booke/booke_machdep.c
@@ -156,7 +156,6 @@ __FBSDID("$FreeBSD$");
#define debugf(fmt, args...)
#endif
-extern unsigned char kernel_text[];
extern unsigned char _etext[];
extern unsigned char _edata[];
extern unsigned char __bss_start[];
@@ -311,7 +310,7 @@ booke_init(u_long arg1, u_long arg2)
end += fdt_totalsize((void *)dtbp);
__endkernel = end;
mdp = NULL;
- } else if (arg1 > (uintptr_t)kernel_text) /* FreeBSD loader */
+ } else if (arg1 > (uintptr_t)btext) /* FreeBSD loader */
mdp = (void *)arg1;
else /* U-Boot */
mdp = NULL;
diff --git a/sys/powerpc/booke/locore.S b/sys/powerpc/booke/locore.S
index 2d6c66d..a49d796 100644
--- a/sys/powerpc/booke/locore.S
+++ b/sys/powerpc/booke/locore.S
@@ -837,29 +837,6 @@ ENTRY(dataloss_erratum_access)
blr
-/*
- * int setfault()
- *
- * Similar to setjmp to setup for handling faults on accesses to user memory.
- * Any routine using this may only call bcopy, either the form below,
- * or the (currently used) C code optimized, so it doesn't use any non-volatile
- * registers.
- */
- .globl setfault
-setfault:
- mflr %r0
- mfsprg0 %r4
- lwz %r4, TD_PCB(%r2)
- stw %r3, PCB_ONFAULT(%r4)
- mfcr %r4
- stw %r0, 0(%r3)
- stw %r1, 4(%r3)
- stw %r2, 8(%r3)
- stw %r4, 12(%r3)
- stmw %r13, 16(%r3) /* store CR, CTR, XER, [r13 .. r31] */
- li %r3, 0 /* return FALSE */
- blr
-
/************************************************************************/
/* Data section */
/************************************************************************/
diff --git a/sys/powerpc/powerpc/setjmp.S b/sys/powerpc/powerpc/setjmp.S
index 3884b11..910f58b 100644
--- a/sys/powerpc/powerpc/setjmp.S
+++ b/sys/powerpc/powerpc/setjmp.S
@@ -40,7 +40,6 @@
#define JMP_cr 22*REGWIDTH
#define JMP_ctr 23*REGWIDTH
#define JMP_xer 24*REGWIDTH
-#define JMP_sig 25*REGWIDTH
ASENTRY_NOPROF(setjmp)
ST_REG 31, JMP_r31(3)
OpenPOWER on IntegriCloud