Page MenuHomeFreeBSD

D21072.id60198.diff
No OneTemporary

D21072.id60198.diff

Index: head/sys/arm/arm/inckern.S
===================================================================
--- head/sys/arm/arm/inckern.S
+++ head/sys/arm/arm/inckern.S
@@ -1,42 +0,0 @@
-/*-
- * Copyright (c) 2005 Olivier Houchard. 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.
- *
- * 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 THE AUTHOR 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.
- */
-
-#include "opt_kernname.h"
-
-#include <machine/asm.h>
-__FBSDID("$FreeBSD$")
-ENTRY(do_call)
- mov r6, r0
- mov r0, r1
- ldr r1, =0xfff00000
- and r1, pc, r1
- mov sp, r3
- mov r3, #1
- mov pc, r6
-.section ".real_kernel","aw"
-.globl kernel_start;
-kernel_start:
-.incbin KERNNAME
-.globl kernel_end;
-kernel_end:
Index: head/sys/arm/conf/NOTES.armv5
===================================================================
--- head/sys/arm/conf/NOTES.armv5
+++ head/sys/arm/conf/NOTES.armv5
@@ -18,7 +18,6 @@
makeoptions CONF_CFLAGS+="-march=armv5te"
makeoptions LDFLAGS="-zmuldefs"
-makeoptions KERNPHYSADDR=0x00000000
# Undo options from sys/conf/NOTES that we do not want...
Index: head/sys/arm/mv/discovery/std.db78xxx
===================================================================
--- head/sys/arm/mv/discovery/std.db78xxx
+++ head/sys/arm/mv/discovery/std.db78xxx
@@ -3,6 +3,5 @@
include "../mv/std.mv"
files "../mv/discovery/files.db78xxx"
-makeoptions KERNPHYSADDR=0x00900000
makeoptions KERNVIRTADDR=0xc0900000
options KERNVIRTADDR=0xc0900000
Index: head/sys/arm/mv/orion/std.db88f5xxx
===================================================================
--- head/sys/arm/mv/orion/std.db88f5xxx
+++ head/sys/arm/mv/orion/std.db88f5xxx
@@ -3,6 +3,5 @@
include "../mv/std.mv"
files "../mv/orion/files.db88f5xxx"
-makeoptions KERNPHYSADDR=0x00900000
makeoptions KERNVIRTADDR=0xc0900000
options KERNVIRTADDR=0xc0900000
Index: head/sys/arm/mv/orion/std.ts7800
===================================================================
--- head/sys/arm/mv/orion/std.ts7800
+++ head/sys/arm/mv/orion/std.ts7800
@@ -3,7 +3,6 @@
include "../mv/std.mv"
files "../mv/orion/files.ts7800"
-makeoptions KERNPHYSADDR=0x00900000
makeoptions KERNVIRTADDR=0xc0900000
options KERNVIRTADDR=0xc0900000
options PHYSADDR=0x00000000
Index: head/sys/arm/ralink/std.ralink
===================================================================
--- head/sys/arm/ralink/std.ralink
+++ head/sys/arm/ralink/std.ralink
@@ -5,6 +5,5 @@
makeoptions CONF_CFLAGS="-march=armv5te"
options INTRNG
-makeoptions KERNPHYSADDR=0x40000000
makeoptions KERNVIRTADDR=0xc0000000
options KERNVIRTADDR=0xc0000000
Index: head/sys/conf/Makefile.arm
===================================================================
--- head/sys/conf/Makefile.arm
+++ head/sys/conf/Makefile.arm
@@ -65,86 +65,13 @@
${_LDFLAGS} --no-warn-mismatch --warn-common --export-dynamic \
--dynamic-linker /red/herring \
-o ${FULLKERNEL}.noheader -X ${SYSTEM_OBJS} vers.o
-SYSTEM_LD_TAIL +=;sed s/" + SIZEOF_HEADERS"// ldscript.$M\
+SYSTEM_LD_TAIL +=;sed s/" + SIZEOF_HEADERS"// ldscript.$M \
>ldscript.$M.noheader; \
${SYSTEM_LD_}; \
${OBJCOPY} -S -O binary ${FULLKERNEL}.noheader \
${KERNEL_KO}.bin; \
rm ${FULLKERNEL}.noheader
-FILES_CPU_FUNC = \
- $S/$M/$M/cpufunc_asm_armv5_ec.S \
- $S/$M/$M/cpufunc_asm_sheeva.S
-
-.if ${MACHINE_ARCH:Marmv[67]*} == "" && defined(KERNPHYSADDR)
-KERNEL_EXTRA=trampoline
-KERNEL_EXTRA_INSTALL=kernel.gz.tramp
-trampoline: ${KERNEL_KO}.tramp
-${KERNEL_KO}.tramp: ${KERNEL_KO} $S/$M/$M/inckern.S $S/$M/$M/elf_trampoline.c
- echo "#define KERNNAME \"${KERNEL_KO}.tmp\"" >opt_kernname.h
- sed s/${KERNVIRTADDR}/${KERNPHYSADDR}/ ldscript.$M > ldscript.$M.tramp
- sed s/" + SIZEOF_HEADERS"// ldscript.$M.tramp > \
- ldscript.$M.tramp.noheader
- echo "#include <machine/asm.h>" >tmphack.S
- echo "ENTRY(_start)" >>tmphack.S
- echo "bl _startC" >>tmphack.S
- ${OBJCOPY} --strip-symbol '$$d' --strip-symbol '$$a' \
- -g --strip-symbol '$$t' ${FULLKERNEL} ${KERNEL_KO}.tmp
- eval $$(stat -s ${KERNEL_KO}.tmp) && \
- echo "#define KERNSIZE $$st_size" >>opt_kernname.h
- ${CC} -O -nostdlib -I. -I$S \
- -Xlinker -T -Xlinker ldscript.$M.tramp \
- -DELF_TRAMPOLINE \
- tmphack.S \
- $S/$M/$M/elf_trampoline.c \
- $S/$M/$M/inckern.S \
- ${FILES_CPU_FUNC} \
- -o ${KERNEL_KO}.tramp
- ${CC} -O -nostdlib -I. -I$S \
- -Xlinker -T -Xlinker ldscript.$M.tramp.noheader \
- -DELF_TRAMPOLINE \
- tmphack.S \
- $S/$M/$M/elf_trampoline.c \
- $S/$M/$M/inckern.S \
- ${FILES_CPU_FUNC} \
- -o ${KERNEL_KO}.tramp.noheader
- ${OBJCOPY} -S -O binary ${KERNEL_KO}.tramp.noheader \
- ${KERNEL_KO}.tramp.bin
- ${OBJCOPY} ${STRIP_FLAGS} ${KERNEL_KO}.tmp
- echo "#define KERNNAME \"${KERNEL_KO}.tmp.gz\"" >opt_kernname.h
- eval $$(stat -s ${KERNEL_KO}.tmp) && \
- echo "#define KERNSIZE $$st_size" >>opt_kernname.h
- gzip -f9 ${KERNEL_KO}.tmp
- eval $$(stat -s ${KERNEL_KO}.tmp.gz) && \
- echo "#define KERNCOMPSIZE $$st_size" >>opt_kernname.h
- ${CC} -O2 -ffreestanding -I. -I$S -c \
- -DKZIP -DELF_TRAMPOLINE \
- $S/kern/subr_inflate.c \
- -o inflate-tramp.o
- ${CC} -O -nostdlib -I. -I$S \
- -Xlinker -T -Xlinker ldscript.$M.tramp \
- -DKZIP -DELF_TRAMPOLINE \
- tmphack.S \
- $S/$M/$M/elf_trampoline.c \
- inflate-tramp.o \
- $S/$M/$M/inckern.S \
- ${FILES_CPU_FUNC} \
- -o ${KERNEL_KO}.gz.tramp
- ${CC} -O -nostdlib -I. -I$S \
- -Xlinker -T -Xlinker ldscript.$M.tramp.noheader \
- -DKZIP -DELF_TRAMPOLINE \
- tmphack.S \
- $S/$M/$M/elf_trampoline.c \
- inflate-tramp.o \
- $S/$M/$M/inckern.S \
- ${FILES_CPU_FUNC} \
- -o ${KERNEL_KO}.tramp.noheader
- ${OBJCOPY} -S -O binary ${KERNEL_KO}.tramp.noheader \
- ${KERNEL_KO}.gz.tramp.bin
- rm ${KERNEL_KO}.tmp.gz ${KERNEL_KO}.tramp.noheader opt_kernname.h \
- inflate-tramp.o tmphack.S
-.endif
-
%BEFORE_DEPEND
%OBJS
@@ -159,13 +86,9 @@
CLEAN+= ldscript.$M ${KERNEL_KO}.bin ldscript.$M.noheader
-CLEAN+= ${KERNEL_KO}.tramp ${KERNEL_KO}.tramp.bin ldscript.$M.tramp \
- ldscript.$M.tramp.noheader ${KERNEL_KO}.gz.tramp \
- ${KERNEL_KO}.gz.tramp.bin
-
ldscript.$M: $S/conf/ldscript.$M
- cat $S/conf/ldscript.$M|sed s/KERNPHYSADDR/${KERNPHYSADDR}/g| \
- sed s/KERNVIRTADDR/${KERNVIRTADDR}/g > ldscript.$M
+ sed s/KERNVIRTADDR/${KERNVIRTADDR}/g > ldscript.$M < $S/conf/ldscript.$M
+
%RULES
.include "$S/conf/kern.post.mk"

File Metadata

Mime Type
text/plain
Expires
Wed, Feb 26, 10:44 PM (16 h, 58 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16859000
Default Alt Text
D21072.id60198.diff (7 KB)

Event Timeline