From 06993ee7295c81f71462616277624fbf8ebc8ec9 Mon Sep 17 00:00:00 2001 From: Asami Doi Date: Wed, 7 Aug 2019 13:40:53 +0900 Subject: lib: ramdetect: Register exception handlers for ARMv8 Register exception handlers to avoid a Synchronous External Abort that is raised when you try to access a non-memory address on ARMv8. An exception handler can jump over the faulting instruction. This is the feature only for QEMU/AArch64. Signed-off-by: Asami Doi Change-Id: I09a306ca307ba4027d9758c3debc2e7c844c66b8 Reviewed-on: https://review.coreboot.org/c/coreboot/+/34774 Tested-by: build bot (Jenkins) Reviewed-by: Raul Rangel --- src/include/ramdetect.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/include') diff --git a/src/include/ramdetect.h b/src/include/ramdetect.h index b63cdf14cf..e2a7eced67 100644 --- a/src/include/ramdetect.h +++ b/src/include/ramdetect.h @@ -11,6 +11,12 @@ * GNU General Public License for more details. */ + +/* + * Used in probe_ramsize(). This is a weak function and it's overridden for + * ARMv8. Return 1 when DRAM exists at the address, otherwise return 0. + */ +int probe_mb(const uintptr_t dram_start, const uintptr_t size); /* * Probe an area if it's read/writable. * Primary use case is the detection of DRAM amount on emulators. -- cgit v1.2.3