Remove MIPS architecture

The MIPS architecture port has been added 5+ years ago in order to
support a Chrome OS project that ended up going nowhere. No other board
has used it since and nobody is still willing or has the expertise and
hardware to maintain it. We have decided that it has become too much of
a mainenance burden and the chance of anyone ever reviving it seems too
slim at this point. This patch eliminates all MIPS code and
MIPS-specific hacks.

Change-Id: I5e49451cd055bbab0a15dcae5f53e0172e6e2ebe
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34919
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Julius Werner
2019-08-16 15:35:39 -07:00
committed by Patrick Georgi
parent 63c444a69b
commit f96d9051c2
75 changed files with 15 additions and 3078 deletions

View File

@@ -9,9 +9,6 @@ settings. `Perl`
platform. `C`
* __autoport__ - Automated porting coreboot to Sandy Bridge/Ivy Bridge
platforms `Go`
* __bimgtool__ - A simple tool which generates and verifies boot images
in the BIMG format, used in systems designed by Imagination
Technologies, for example the Pistachio SoC. `C`
* __bincfg__ - Compiler/Decompiler for data blobs with specs `Lex`
`Yacc`
* __board_status__ - Tools to collect logs and upload them to the board

View File

@@ -65,7 +65,7 @@ struct cbfs_header {
#define CBFS_ARCHITECTURE_X86 0x00000001
#define CBFS_ARCHITECTURE_ARM 0x00000010
#define CBFS_ARCHITECTURE_AARCH64 0x0000aa64
#define CBFS_ARCHITECTURE_MIPS 0x00000100
#define CBFS_ARCHITECTURE_MIPS 0x00000100 /* deprecated */
#define CBFS_ARCHITECTURE_RISCV 0xc001d0de
#define CBFS_ARCHITECTURE_PPC64 0x407570ff

View File

@@ -8,12 +8,12 @@ DEST ?= $(CURDIR)/xgcc
# Example: BUILDGCC_OPTIONS=-c to remove temporary files before build
all all_with_gdb:
$(MAKE) build-i386 build-x64 build-arm build-mips \
$(MAKE) build-i386 build-x64 build-arm \
build-riscv build-aarch64 build-ppc64 build-nds32le \
build_clang build_iasl build_make build_nasm
all_without_gdb:
$(MAKE) SKIP_GDB=1 build-i386 build-x64 build-arm build-mips \
$(MAKE) SKIP_GDB=1 build-i386 build-x64 build-arm \
build-riscv build-aarch64 build-ppc64 build-nds32le \
build_clang build_iasl build_make build_nasm
@@ -59,9 +59,6 @@ build-arm:
build-aarch64:
@$(MAKE) build_tools BUILD_PLATFORM=aarch64-elf
build-mips:
@$(MAKE) build_tools BUILD_PLATFORM=mipsel-elf
build-riscv:
# GDB is currently not supported on RISC-V
@$(MAKE) build_gcc BUILD_PLATFORM=riscv-elf
@@ -88,7 +85,6 @@ distclean: clean
.PHONY: build_gcc build_iasl build_gdb build_clang all all_with_gdb \
all_without_gdb build_tools build-i386 build-x64 build-arm \
build-aarch64 build-mips build-riscv build-ppc64 build-nds32le \
build-nasm \
build-aarch64 build-riscv build-ppc64 build-nds32le build-nasm \
clean distclean clean_tempfiles
.NOTPARALLEL:

View File

@@ -13,7 +13,7 @@
## GNU General Public License for more details.
##
TOOLCHAIN_ARCHES := i386 x64 arm aarch64 mips riscv ppc64 nds32le
TOOLCHAIN_ARCHES := i386 x64 arm aarch64 riscv ppc64 nds32le
help_toolchain help::
@echo '*** Toolchain targets ***'
@@ -39,9 +39,9 @@ crossgcc: clean-for-update
$(MAKE) -C util/crossgcc all_without_gdb SKIP_CLANG=1
.PHONY: crossgcc crossgcc-i386 crossgcc-x64 crossgcc-arm crossgcc-aarch64 \
crossgcc-mips crossgcc-riscv crossgcc-power8 crossgcc-clean iasl \
crossgcc-riscv crossgcc-power8 crossgcc-clean iasl \
clang crosstools-i386 crosstools-x64 crosstools-arm \
crosstools-aarch64 crosstools-mips crosstools-riscv crosstools-power8 \
crosstools-aarch64 crosstools-riscv crosstools-power8 \
jenkins-build-toolchain gnumake nasm
$(foreach arch,$(TOOLCHAIN_ARCHES),crossgcc-$(arch)): clean-for-update

View File

@@ -7,7 +7,6 @@ known working:
i386-elf
x86_64-elf
powerpc-elf
mipsel-elf
arm-elf
armv7a-eabi
aarch64-elf

View File

@@ -604,7 +604,7 @@ myhelp()
printf " (defaults to $TARGETARCH)\n"
printf " [-S|--scripting] build scripting support for GDB\n\n"
printf "Platforms for GCC & GDB:\n"
printf " x86_64 i386-elf i386-mingw32 mipsel-elf riscv-elf arm aarch64\n"
printf " x86_64 i386-elf i386-mingw32 riscv-elf arm aarch64\n"
printf " powerpc64le-linux-gnu nds32le-elf\n\n"
}
@@ -1018,7 +1018,6 @@ case "$TARGETARCH" in
x86_64*) TARGETARCH=x86_64-elf;;
i386-elf) ;;
i386-mingw32) ;;
mipsel-elf) ;;
riscv-elf) TARGETARCH=riscv64-elf;;
powerpc64*-linux*) ;;
i386*) TARGETARCH=i386-elf;;

View File

@@ -334,9 +334,6 @@ EOF
TI_AM335X)
cpu_nice="TI AM335X";
socket_nice="?";;
IMGTEC_PISTACHIO)
cpu_nice="Imagination Technologies Pistachio";
socket_nice="—";;
INTEL_APOLLOLAKE)
cpu_nice="Intel® Apollo Lake";
socket_nice="—";;

View File

@@ -353,11 +353,6 @@ get_log_dedupe "ARM" \
get_log_dedupe "RISC-V" \
"$(for codedir in $(grep -rl "_RISCV" --include=Kconfig | grep -v 'payloads/\|drivers/\|vendorcode/\|console' ); do dirname "$codedir"; done | grep -v '^src$')" \
"riscv\|risc-v\|sifive"
get_log_dedupe "MIPS" \
"$(for codedir in $(grep -rl "_MIPS" --include=Kconfig | \
grep -v 'src/mainboard\|payloads/\|drivers/\|vendorcode/\|console' ); \
do dirname "$codedir"; done | grep -v '^src$')"
}
get_log_dedupe "X86 intel" \

View File

@@ -195,14 +195,6 @@ detect_special_flags() {
"$LDFLAGS --fix-cortex-a53-843419" && \
LDFLAGS_ARM64_A53_ERRATUM_843419+=" --fix-cortex-a53-843419"
;;
mipsel)
testcc "$GCC" "$CFLAGS_GCC -mno-abicalls -fno-pic" && \
CFLAGS_GCC+=" -mno-abicalls -fno-pic"
# Enforce little endian mode.
testcc "$GCC" "$CFLAGS_GCC -EL" && \
CFLAGS_GCC+=" -EL"
;;
esac
}
@@ -314,7 +306,7 @@ EOF
}
# Architecture definitions
SUPPORTED_ARCHITECTURES="arm arm64 mipsel riscv x64 x86 ppc64"
SUPPORTED_ARCHITECTURES="arm arm64 riscv x64 x86 ppc64"
# TARCH: local name for the architecture
# (used as CC_${TARCH} in the build system)
@@ -367,16 +359,6 @@ arch_config_x86() {
CC_RT_EXTRA_GCC="--wrap __divdi3 --wrap __udivdi3 --wrap __moddi3 --wrap __umoddi3"
}
arch_config_mipsel() {
TARCH="mips"
TBFDARCHS="tradlittlemips littlemips"
TCLIST="mipsel"
TWIDTH="32"
TSUPP="mips mipsel"
TABI="elf"
TENDIAN="EL"
}
arch_config_ppc64() {
TARCH="ppc64"
TBFDARCHS="powerpc"