aboutsummaryrefslogtreecommitdiff
path: root/stand
diff options
context:
space:
mode:
authorKyle Evans <kevans@FreeBSD.org>2019-09-18 01:33:17 +0000
committerKyle Evans <kevans@FreeBSD.org>2019-09-18 01:33:17 +0000
commit8b2195605b84ac7df041f6212ec7130b7b9cfc78 (patch)
tree51460ce829b026bfc2ea73619e8f0107818cca52 /stand
parentebcb81079e5c150e8da9f8a4cbcd8409134217cc (diff)
downloadsrc-8b2195605b84ac7df041f6212ec7130b7b9cfc78.tar.gz
src-8b2195605b84ac7df041f6212ec7130b7b9cfc78.zip
mips: ubldr: use truncated load address for mips32
BFD appears to silently truncate 0xffffffff80800000 when it processes the ldscript for 32-bit mips, but LLD chokes on it as the linker script tries to place elements above 32-bit range. It's unclear to me if silent truncation is kosher or not and whether this patch is really what we want to do, but it is one approach at least. Reviewed by: imp, mizhka Differential Revision: https://reviews.freebsd.org/D21487
Notes
Notes: svn path=/head/; revision=352464
Diffstat (limited to 'stand')
-rw-r--r--stand/mips/uboot/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/stand/mips/uboot/Makefile b/stand/mips/uboot/Makefile
index 1751bcb80d54..1162b7fed3b0 100644
--- a/stand/mips/uboot/Makefile
+++ b/stand/mips/uboot/Makefile
@@ -19,7 +19,11 @@ INSTALLFLAGS= -b
WARNS?= 1
# Address at which ubldr will be loaded.
# This varies for different boards and SOCs.
+.if ${MACHINE_ARCH:Mmips64*}
UBLDR_LOADADDR?= 0xffffffff80800000
+.else
+UBLDR_LOADADDR?= 0x80800000
+.endif
# Architecture-specific loader code
SRCS= start.S conf.c vers.c