From 2679534b03a5e1c89652f470906e428b8c971afc Mon Sep 17 00:00:00 2001 From: Maxime Ripard Date: Fri, 30 Sep 2016 15:57:14 +0200 Subject: libfdt: Add new errors for the overlay code Add a few new error codes to report the failure conditions we might encounter in the overlay application code: - FDT_ERR_BADOVERLAY, when an overlay cannot be parsed, even though its structure is correct - FDT_ERR_NOPHANDLES, when we ran out of available phandles and we cannot use a new phandle without either using an invalid one (-1 or 0), or one already used. Signed-off-by: Maxime Ripard Signed-off-by: David Gibson --- cpukit/dtc/libfdt/fdt_strerror.c | 3 +++ cpukit/include/libfdt.h | 11 ++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'cpukit') diff --git a/cpukit/dtc/libfdt/fdt_strerror.c b/cpukit/dtc/libfdt/fdt_strerror.c index e6c3ceee8c..3cb357f604 100644 --- a/cpukit/dtc/libfdt/fdt_strerror.c +++ b/cpukit/dtc/libfdt/fdt_strerror.c @@ -76,6 +76,9 @@ static struct fdt_errtabent fdt_errtable[] = { FDT_ERRTABENT(FDT_ERR_BADVERSION), FDT_ERRTABENT(FDT_ERR_BADSTRUCTURE), FDT_ERRTABENT(FDT_ERR_BADLAYOUT), + FDT_ERRTABENT(FDT_ERR_BADOVERLAY), + FDT_ERRTABENT(FDT_ERR_BADOVERLAY), + FDT_ERRTABENT(FDT_ERR_NOPHANDLES), }; #define FDT_ERRTABSIZE (sizeof(fdt_errtable) / sizeof(fdt_errtable[0])) diff --git a/cpukit/include/libfdt.h b/cpukit/include/libfdt.h index ecb11fc9e9..361cc6c719 100644 --- a/cpukit/include/libfdt.h +++ b/cpukit/include/libfdt.h @@ -126,7 +126,16 @@ * value. For example: a property expected to contain a string list * is not NUL-terminated within the length of its value. */ -#define FDT_ERR_MAX 15 +#define FDT_ERR_BADOVERLAY 16 + /* FDT_ERR_BADOVERLAY: The device tree overlay, while + * correctly structured, cannot be applied due to some + * unexpected or missing value, property or node. */ + +#define FDT_ERR_NOPHANDLES 17 + /* FDT_ERR_NOPHANDLES: The device tree doesn't have any + * phandle available anymore without causing an overflow */ + +#define FDT_ERR_MAX 17 /**********************************************************************/ /* Low-level functions (you probably don't need these) */ -- cgit v1.2.3