[U-Boot] [RFC] lib/fdtdec: Fix compiling warning for debug

York Sun yorksun at freescale.com
Wed Jul 15 22:26:46 CEST 2015


fdt_addr_t and fdt_size_t can be either 64-bit or 32-bit, depending
on the architecture. Change the type to phys_addr_t and phys_size_t.

Signed-off-by: York Sun <yorksun at freescale.com>
---
 include/fdtdec.h |    7 +++----
 lib/fdtdec.c     |    4 ++--
 2 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/include/fdtdec.h b/include/fdtdec.h
index 2323603..c61734c 100644
--- a/include/fdtdec.h
+++ b/include/fdtdec.h
@@ -14,6 +14,7 @@
  * changes to support FDT are minimized.
  */
 
+#include <linux/types.h>
 #include <libfdt.h>
 #include <pci.h>
 
@@ -21,15 +22,13 @@
  * A typedef for a physical address. Note that fdt data is always big
  * endian even on a litle endian machine.
  */
+typedef phys_addr_t fdt_addr_t;
+typedef phys_size_t fdt_size_t;
 #ifdef CONFIG_PHYS_64BIT
-typedef u64 fdt_addr_t;
-typedef u64 fdt_size_t;
 #define FDT_ADDR_T_NONE (-1ULL)
 #define fdt_addr_to_cpu(reg) be64_to_cpu(reg)
 #define fdt_size_to_cpu(reg) be64_to_cpu(reg)
 #else
-typedef u32 fdt_addr_t;
-typedef u32 fdt_size_t;
 #define FDT_ADDR_T_NONE (-1U)
 #define fdt_addr_to_cpu(reg) be32_to_cpu(reg)
 #define fdt_size_to_cpu(reg) be32_to_cpu(reg)
diff --git a/lib/fdtdec.c b/lib/fdtdec.c
index 9877849..1f22fab 100644
--- a/lib/fdtdec.c
+++ b/lib/fdtdec.c
@@ -102,8 +102,8 @@ fdt_addr_t fdtdec_get_addr_size(const void *blob, int node,
 			size = (fdt_size_t *)((char *)cell +
 					sizeof(fdt_addr_t));
 			*sizep = fdt_size_to_cpu(*size);
-			debug("addr=%08lx, size=%08x\n",
-			      (ulong)addr, *sizep);
+			debug("addr=%pa, size=%zx\n",
+			      &addr, *sizep);
 		} else {
 			debug("%08lx\n", (ulong)addr);
 		}
-- 
1.7.9.5



More information about the U-Boot mailing list