[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XEN][PATCH 2/2] xen: libfdt: Changes to make libfdt v1.6.1 compatible with Xen
A few minor changes are done to make it compatible with Xen: fdt_overlay.c: overlay_fixup_phandle() Replace strtoul() with simple_strtoul() as strtoul() is not available in Xen lib and included lib.h. Change char *endptr to const char *endptr. libfdt_env.h: Changed path for config.h and stdbool.h. Remaining Xen changes to libfdt_env.h carried over from existing libfdt (v1.4.0) Signed-off-by: Vikram Garhwal <fnu.vikram@xxxxxxxxxx> --- xen/common/libfdt/fdt_overlay.c | 6 ++++-- xen/include/xen/libfdt/libfdt.h | 4 ++-- xen/include/xen/libfdt/libfdt_env.h | 14 ++++++++------ 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/xen/common/libfdt/fdt_overlay.c b/xen/common/libfdt/fdt_overlay.c index d217e79..7b95e2b 100644 --- a/xen/common/libfdt/fdt_overlay.c +++ b/xen/common/libfdt/fdt_overlay.c @@ -8,6 +8,7 @@ #include <fdt.h> #include <libfdt.h> +#include <xen/lib.h> #include "libfdt_internal.h" @@ -446,7 +447,8 @@ static int overlay_fixup_phandle(void *fdt, void *fdto, int symbols_off, const char *fixup_str = value; uint32_t path_len, name_len; uint32_t fixup_len; - char *sep, *endptr; + char *sep; + const char *endptr; int poffset, ret; fixup_end = memchr(value, '\0', len); @@ -476,7 +478,7 @@ static int overlay_fixup_phandle(void *fdt, void *fdto, int symbols_off, if (!name_len) return -FDT_ERR_BADOVERLAY; - poffset = strtoul(sep + 1, &endptr, 10); + poffset = simple_strtoul(sep + 1, &endptr, 10); if ((*endptr != '\0') || (endptr <= (sep + 1))) return -FDT_ERR_BADOVERLAY; diff --git a/xen/include/xen/libfdt/libfdt.h b/xen/include/xen/libfdt/libfdt.h index 73467f7..c71689e 100644 --- a/xen/include/xen/libfdt/libfdt.h +++ b/xen/include/xen/libfdt/libfdt.h @@ -6,8 +6,8 @@ * Copyright (C) 2006 David Gibson, IBM Corporation. */ -#include <libfdt_env.h> -#include <fdt.h> +#include <xen/libfdt/libfdt_env.h> +#include <xen/libfdt/fdt.h> #ifdef __cplusplus extern "C" { diff --git a/xen/include/xen/libfdt/libfdt_env.h b/xen/include/xen/libfdt/libfdt_env.h index 73b6d40..03380d5 100644 --- a/xen/include/xen/libfdt/libfdt_env.h +++ b/xen/include/xen/libfdt/libfdt_env.h @@ -7,12 +7,11 @@ * Copyright 2012 Kim Phillips, Freescale Semiconductor. */ -#include <stdbool.h> -#include <stddef.h> -#include <stdint.h> -#include <stdlib.h> -#include <string.h> -#include <limits.h> +#include <xen/config.h> +#include <xen/types.h> +#include <xen/string.h> +#include <asm/byteorder.h> +#include <xen/stdbool.h> #ifdef __CHECKER__ #define FDT_FORCE __attribute__((force)) @@ -35,6 +34,9 @@ typedef uint64_t FDT_BITWISE fdt64_t; (EXTRACT_BYTE(x, 4) << 24) | (EXTRACT_BYTE(x, 5) << 16) | \ (EXTRACT_BYTE(x, 6) << 8) | EXTRACT_BYTE(x, 7)) +/* Xen-specific libfdt error code. */ +#define FDT_ERR_XEN(err) (FDT_ERR_MAX + (err)) + static inline uint16_t fdt16_to_cpu(fdt16_t x) { return (FDT_FORCE uint16_t)CPU_TO_FDT16(x); -- 2.7.4
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |