efi_loader: correct includes in efi_variable.c
[oweals/u-boot.git] / lib / fdtdec_common.c
index 757931a9cb25119b3283b12bc985310310dae4d0..088e9e9063a92b378912fefdc46c74cc84ee892d 100644 (file)
@@ -1,16 +1,15 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (c) 2014
  * Heiko Schocher, DENX Software Engineering, hs@denx.de.
  *
  * Based on lib/fdtdec.c:
  * Copyright (c) 2011 The Chromium OS Authors.
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #ifndef USE_HOSTCC
 #include <common.h>
-#include <libfdt.h>
+#include <linux/libfdt.h>
 #include <fdtdec.h>
 #else
 #include "libfdt.h"
@@ -36,3 +35,21 @@ int fdtdec_get_int(const void *blob, int node, const char *prop_name,
        debug("(not found)\n");
        return default_val;
 }
+
+unsigned int fdtdec_get_uint(const void *blob, int node, const char *prop_name,
+                       unsigned int default_val)
+{
+       const int *cell;
+       int len;
+
+       debug("%s: %s: ", __func__, prop_name);
+       cell = fdt_getprop(blob, node, prop_name, &len);
+       if (cell && len >= sizeof(unsigned int)) {
+               unsigned int val = fdt32_to_cpu(cell[0]);
+
+               debug("%#x (%d)\n", val, val);
+               return val;
+       }
+       debug("(not found)\n");
+       return default_val;
+}