From 93db2b83ed515fd5700b6c5abb0fba612ef2cdcb Mon Sep 17 00:00:00 2001 From: Simon Goldschmidt Date: Tue, 22 Oct 2019 21:29:46 +0200 Subject: [PATCH] Kconfig add config ERR_PTR_OFFSET Some U-Boot pointers have redundant information, so we can use a scheme where we can return either an error code or a pointer with the same return value. The default implementation just casts the pointer to a number, however, this may fail on platforms where the end of the address range is used for valid pointers (e.g. 0xffffff00 is a valid heap pointer in socfpga SPL). For such platforms, this value provides an upper range of those error pointer values - up to 'MAX_ERRNO' bytes below this value must be unused/invalid addresses. Signed-off-by: Simon Goldschmidt --- Kconfig | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Kconfig b/Kconfig index 66b059f749..cda4f58ff7 100644 --- a/Kconfig +++ b/Kconfig @@ -281,6 +281,20 @@ config SYS_LDSCRIPT Path within the source tree to the linker script to use for the main U-Boot binary. +config ERR_PTR_OFFSET + hex + default 0x0 + help + Some U-Boot pointers have redundant information, so we can use a + scheme where we can return either an error code or a pointer with the + same return value. The default implementation just casts the pointer + to a number, however, this may fail on platforms where the end of the + address range is used for valid pointers (e.g. 0xffffff00 is a valid + heap pointer in socfpga SPL). + For such platforms, this value provides an upper range of those error + pointer values - up to 'MAX_ERRNO' bytes below this value must be + unused/invalid addresses. + endmenu # General setup menu "Boot images" -- 2.39.5