arch/power8: Rename to ppc64
POWER8 is a specific implementation of ppc64, which is by now outdated (POWER9 has been on the market for a while). Rename arch/power8/ to potentially cover a wider range of hardware. TEST=Toolchains built before/after this commit can build coreboot for emulation/qemu-power8 from before/after this commit. Change-Id: I2d6f08b12a9ffc8a652ddcd6f24ad85ecb33ca52 Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net> Reviewed-on: https://review.coreboot.org/c/29943 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Timothy Pearson <tpearson@raptorengineering.com>
This commit is contained in:
parent
2af17af829
commit
c22ad581c8
|
@ -23,6 +23,8 @@ General changes
|
|||
* Add bootblock compression capability: on systems that copy the bootblock
|
||||
from very slow flash to ERAM, allow adding a stub that decompresses the
|
||||
bootblock into ERAM to minimize the amount of flash reads
|
||||
* Rename the POWER8 architecture port to PPC64 to reflect that it isn't limited
|
||||
to POWER8
|
||||
|
||||
Toolchain
|
||||
---------
|
||||
|
|
|
@ -144,11 +144,11 @@ F: src/mainboard/emulation/*-riscv/
|
|||
F: src/mainboard/sifive/
|
||||
F: util/riscv/
|
||||
|
||||
POWER8 ARCHITECTURE
|
||||
PPC64 ARCHITECTURE
|
||||
M: Ronald Minnich <rminnich@gmail.com>
|
||||
M: Timothy Pearson <tpearson@raptorengineeringinc.com>
|
||||
S: Maintained
|
||||
F: src/arch/power8/
|
||||
F: src/arch/ppc64/
|
||||
F: src/cpu/qemu-power8/
|
||||
F: src/mainboard/emulation/qemu-power8/
|
||||
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
config ARCH_POWER8
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_BOOTBLOCK_POWER8
|
||||
bool
|
||||
default n
|
||||
select ARCH_POWER8
|
||||
select BOOTBLOCK_CUSTOM
|
||||
select C_ENVIRONMENT_BOOTBLOCK
|
||||
select ARCH_VERSTAGE_POWER8
|
||||
select ARCH_ROMSTAGE_POWER8
|
||||
select ARCH_RAMSTAGE_POWER8
|
||||
|
||||
config ARCH_VERSTAGE_POWER8
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_ROMSTAGE_POWER8
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_RAMSTAGE_POWER8
|
||||
bool
|
||||
default n
|
|
@ -0,0 +1,25 @@
|
|||
config ARCH_PPC64
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_BOOTBLOCK_PPC64
|
||||
bool
|
||||
default n
|
||||
select ARCH_PPC64
|
||||
select BOOTBLOCK_CUSTOM
|
||||
select C_ENVIRONMENT_BOOTBLOCK
|
||||
select ARCH_VERSTAGE_PPC64
|
||||
select ARCH_ROMSTAGE_PPC64
|
||||
select ARCH_RAMSTAGE_PPC64
|
||||
|
||||
config ARCH_VERSTAGE_PPC64
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_ROMSTAGE_PPC64
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_RAMSTAGE_PPC64
|
||||
bool
|
||||
default n
|
|
@ -16,14 +16,14 @@
|
|||
##
|
||||
################################################################################
|
||||
|
||||
power8_flags = -I$(src)/arch/power8/ -mbig-endian -mcpu=power8 -mtune=power8
|
||||
ppc64_flags = -I$(src)/arch/ppc64/ -mbig-endian -mcpu=power8 -mtune=power8
|
||||
|
||||
power8_asm_flags =
|
||||
ppc64_asm_flags =
|
||||
|
||||
################################################################################
|
||||
## bootblock
|
||||
################################################################################
|
||||
ifeq ($(CONFIG_ARCH_BOOTBLOCK_POWER8),y)
|
||||
ifeq ($(CONFIG_ARCH_BOOTBLOCK_PPC64),y)
|
||||
|
||||
bootblock-y = bootblock.S stages.c
|
||||
bootblock-y += boot.c
|
||||
|
@ -35,7 +35,7 @@ bootblock-y += \
|
|||
$(top)/src/lib/memmove.c \
|
||||
$(top)/src/lib/memset.c
|
||||
|
||||
bootblock-generic-ccopts += $(power8_flags)
|
||||
bootblock-generic-ccopts += $(ppc64_flags)
|
||||
|
||||
$(objcbfs)/bootblock.debug: $$(bootblock-objs)
|
||||
@printf " LINK $(subst $(obj)/,,$(@))\n"
|
||||
|
@ -48,7 +48,7 @@ endif
|
|||
################################################################################
|
||||
## romstage
|
||||
################################################################################
|
||||
ifeq ($(CONFIG_ARCH_ROMSTAGE_POWER8),y)
|
||||
ifeq ($(CONFIG_ARCH_ROMSTAGE_PPC64),y)
|
||||
|
||||
romstage-y += boot.c
|
||||
romstage-y += stages.c
|
||||
|
@ -68,15 +68,15 @@ $(objcbfs)/romstage.debug: $$(romstage-objs)
|
|||
@printf " LINK $(subst $(obj)/,,$(@))\n"
|
||||
$(LD_romstage) $(LDFLAGS_romstage) -o $@ -L$(obj) -T $(call src-to-obj,romstage,src/mainboard/$(MAINBOARDDIR)/memlayout.ld) --whole-archive --start-group $(filter-out %.ld,$(romstage-objs)) --end-group $(COMPILER_RT_romstage)
|
||||
|
||||
romstage-c-ccopts += $(power8_flags)
|
||||
romstage-S-ccopts += $(power8_asm_flags)
|
||||
romstage-c-ccopts += $(ppc64_flags)
|
||||
romstage-S-ccopts += $(ppc64_asm_flags)
|
||||
|
||||
endif
|
||||
|
||||
################################################################################
|
||||
## ramstage
|
||||
################################################################################
|
||||
ifeq ($(CONFIG_ARCH_RAMSTAGE_POWER8),y)
|
||||
ifeq ($(CONFIG_ARCH_RAMSTAGE_PPC64),y)
|
||||
|
||||
ramstage-y += rom_media.c
|
||||
ramstage-y += stages.c
|
||||
|
@ -102,7 +102,7 @@ $(objcbfs)/ramstage.debug: $$(ramstage-objs)
|
|||
@printf " CC $(subst $(obj)/,,$(@))\n"
|
||||
$(LD_ramstage) $(LDFLAGS_ramstage) -o $@ -L$(obj) -T $(call src-to-obj,ramstage,src/mainboard/$(MAINBOARDDIR)/memlayout.ld) --whole-archive --start-group $(filter-out %.ld,$(ramstage-objs)) --end-group $(COMPILER_RT_ramstage)
|
||||
|
||||
ramstage-c-ccopts += $(power8_flags)
|
||||
ramstage-S-ccopts += $(power8_asm_flags)
|
||||
ramstage-c-ccopts += $(ppc64_flags)
|
||||
ramstage-S-ccopts += $(ppc64_asm_flags)
|
||||
|
||||
endif
|
|
@ -36,10 +36,10 @@ struct cpu_info {
|
|||
#endif
|
||||
};
|
||||
|
||||
struct cpuinfo_power8 {
|
||||
uint8_t power8; /* CPU family */
|
||||
uint8_t power8_vendor; /* CPU vendor */
|
||||
uint8_t power8_model;
|
||||
struct cpuinfo_ppc64 {
|
||||
uint8_t ppc64; /* CPU family */
|
||||
uint8_t ppc64_vendor; /* CPU vendor */
|
||||
uint8_t ppc64_model;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -11,8 +11,8 @@
|
|||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef POWER8_STDINT_H
|
||||
#define POWER8_STDINT_H
|
||||
#ifndef PPC64_STDINT_H
|
||||
#define PPC64_STDINT_H
|
||||
|
||||
/* Exact integral types */
|
||||
typedef unsigned char uint8_t;
|
||||
|
@ -73,4 +73,4 @@ typedef uint8_t bool;
|
|||
typedef s64 intptr_t;
|
||||
typedef u64 uintptr_t;
|
||||
|
||||
#endif /* POWER8_STDINT_H */
|
||||
#endif /* PPC64_STDINT_H */
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
config CPU_QEMU_POWER8
|
||||
bool
|
||||
select ARCH_BOOTBLOCK_POWER8
|
||||
select ARCH_VERSTAGE_POWER8
|
||||
select ARCH_ROMSTAGE_POWER8
|
||||
select ARCH_RAMSTAGE_POWER8
|
||||
select ARCH_BOOTBLOCK_PPC64
|
||||
select ARCH_VERSTAGE_PPC64
|
||||
select ARCH_ROMSTAGE_PPC64
|
||||
select ARCH_RAMSTAGE_PPC64
|
||||
|
|
|
@ -85,7 +85,7 @@ config MAINBOARD_USE_LIBGFXINIT
|
|||
# TODO: Explain differences (if any) for onboard cards.
|
||||
config VGA_ROM_RUN
|
||||
bool "Run VGA Option ROMs"
|
||||
depends on PCI && (ARCH_X86 || ARCH_POWER8) && !MAINBOARD_FORCE_NATIVE_VGA_INIT
|
||||
depends on PCI && (ARCH_X86 || ARCH_PPC64) && !MAINBOARD_FORCE_NATIVE_VGA_INIT
|
||||
select HAVE_VGA_TEXT_FRAMEBUFFER
|
||||
help
|
||||
Execute VGA Option ROMs in coreboot if found. This can be used
|
||||
|
|
|
@ -20,9 +20,9 @@ if BOARD_EMULATION_QEMU_POWER8
|
|||
config BOARD_SPECIFIC_OPTIONS
|
||||
def_bool y
|
||||
select BOARD_ROMSIZE_KB_4096
|
||||
select ARCH_BOOTBLOCK_POWER8
|
||||
select ARCH_BOOTBLOCK_PPC64
|
||||
select HAVE_UART_SPECIAL
|
||||
select ARCH_POWER8
|
||||
select ARCH_PPC64
|
||||
select BOOT_DEVICE_NOT_SPI_FLASH
|
||||
select MISSING_BOARD_RESET
|
||||
|
||||
|
|
|
@ -57,7 +57,7 @@ ARCHDIR-arm := arm
|
|||
ARCHDIR-arm64 := arm64
|
||||
ARCHDIR-riscv := riscv
|
||||
ARCHDIR-mips := mips
|
||||
ARCHDIR-power8 := power8
|
||||
ARCHDIR-ppc64 := ppc64
|
||||
|
||||
CFLAGS_arm +=
|
||||
CFLAGS_arm64 += -mgeneral-regs-only
|
||||
|
@ -65,7 +65,7 @@ CFLAGS_mips += -mips32r2 -G 0 -mno-abicalls -fno-pic
|
|||
CFLAGS_riscv +=
|
||||
CFLAGS_x86_32 +=
|
||||
CFLAGS_x86_64 += -mcmodel=large -mno-red-zone
|
||||
CFLAGS_power8 +=
|
||||
CFLAGS_ppc64 +=
|
||||
|
||||
# Some boards only provide 2K stacks, so storing lots of data there leads to
|
||||
# problems. Since C rules don't allow us to statically determine the maximum
|
||||
|
@ -85,7 +85,7 @@ CFLAGS_arm += -Wstack-usage=1536
|
|||
CFLAGS_arm64 += -Wstack-usage=1536
|
||||
CFLAGS_mips += -Wstack-usage=1536
|
||||
CFLAGS_riscv += -Wstack-usage=1536
|
||||
CFLAGS_power8 += -Wstack-usage=1536
|
||||
CFLAGS_ppc64 += -Wstack-usage=1536
|
||||
endif
|
||||
|
||||
toolchain_to_dir = \
|
||||
|
|
|
@ -9,12 +9,12 @@ DEST ?= $(CURDIR)/xgcc
|
|||
|
||||
all all_with_gdb:
|
||||
$(MAKE) build-i386 build-x64 build-arm build-mips \
|
||||
build-riscv build-aarch64 build-power8 build-nds32le \
|
||||
build-riscv build-aarch64 build-ppc64 build-nds32le \
|
||||
build_clang build_iasl build_make
|
||||
|
||||
all_without_gdb:
|
||||
$(MAKE) SKIP_GDB=1 build-i386 build-x64 build-arm build-mips \
|
||||
build-riscv build-aarch64 build-power8 build-nds32le \
|
||||
build-riscv build-aarch64 build-ppc64 build-nds32le \
|
||||
build_clang build_iasl build_make
|
||||
|
||||
build_tools: build_gcc build_gdb
|
||||
|
@ -63,7 +63,7 @@ build-riscv:
|
|||
# GDB is currently not supported on RISC-V
|
||||
@$(MAKE) build_gcc BUILD_PLATFORM=riscv-elf
|
||||
|
||||
build-power8:
|
||||
build-ppc64:
|
||||
@$(MAKE) build_tools BUILD_PLATFORM=powerpc64-linux-gnu
|
||||
|
||||
build-nds32le:
|
||||
|
@ -85,6 +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-power8 build-nds32le \
|
||||
build-aarch64 build-mips build-riscv build-ppc64 build-nds32le \
|
||||
clean distclean clean_tempfiles
|
||||
.NOTPARALLEL:
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
## GNU General Public License for more details.
|
||||
##
|
||||
|
||||
TOOLCHAIN_ARCHES := i386 x64 arm aarch64 mips riscv power8 nds32le
|
||||
TOOLCHAIN_ARCHES := i386 x64 arm aarch64 mips riscv ppc64 nds32le
|
||||
|
||||
help_toolchain help::
|
||||
@echo '*** Toolchain targets ***'
|
||||
|
|
|
@ -6,7 +6,7 @@ UNDERSCORE='_'
|
|||
|
||||
#lint-stable-000-license-headers
|
||||
TESTFILE000a=src/arch/x86/thread.c
|
||||
TESTFILE000b=src/arch/power8/misc.c
|
||||
TESTFILE000b=src/arch/ppc64/misc.c
|
||||
sed -i.bak 's/^[[:space:]]\*[[:space:]].*//' ${TESTFILE000a}
|
||||
sed -i.bak 's/^[[:space:]]\*[[:space:]]but WITHOUT ANY WARRANTY;//' ${TESTFILE000b}
|
||||
|
||||
|
|
|
@ -303,7 +303,7 @@ EOF
|
|||
}
|
||||
|
||||
# Architecture definitions
|
||||
SUPPORTED_ARCHITECTURES="arm arm64 mipsel riscv x64 x86 power8"
|
||||
SUPPORTED_ARCHITECTURES="arm arm64 mipsel riscv x64 x86 ppc64"
|
||||
|
||||
# TARCH: local name for the architecture
|
||||
# (used as CC_${TARCH} in the build system)
|
||||
|
@ -366,12 +366,12 @@ arch_config_mipsel() {
|
|||
TENDIAN="EL"
|
||||
}
|
||||
|
||||
arch_config_power8() {
|
||||
TARCH="power8"
|
||||
arch_config_ppc64() {
|
||||
TARCH="ppc64"
|
||||
TBFDARCHS="powerpc"
|
||||
TCLIST="powerpc64"
|
||||
TWIDTH="64"
|
||||
TSUPP="power8"
|
||||
TSUPP="ppc64"
|
||||
TABI="linux-gnu" # there is no generic ABI on ppc64
|
||||
CC_RT_EXTRA_GCC="-mcpu=power8 -mbig-endian"
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue