[U-Boot] [PATCH 3/5] Data type defined for pointer addresses

Aneesh Bansal aneesh.bansal at freescale.com
Thu Nov 19 06:41:51 CET 2015


A new data type uintptr_t has been defined for creating
pointers (32 or 64 bit depending on Core) from 32 bit variables
storing the address.
If a 32 bit variable (u32) is typecasted to a pointer (void *),
compiler gives a warning in case size of pointer on the core is 64 bit.

Signed-off-by: Aneesh Bansal <aneesh.bansal at freescale.com>
---
 arch/arm/include/asm/types.h     | 2 ++
 arch/powerpc/include/asm/types.h | 1 +
 2 files changed, 3 insertions(+)

diff --git a/arch/arm/include/asm/types.h b/arch/arm/include/asm/types.h
index 388058e..5555765 100644
--- a/arch/arm/include/asm/types.h
+++ b/arch/arm/include/asm/types.h
@@ -56,6 +56,8 @@ typedef unsigned long phys_addr_t;
 typedef unsigned long phys_size_t;
 #endif
 
+typedef unsigned long uintptr_t;
+
 #endif /* __KERNEL__ */
 
 typedef unsigned long resource_size_t;
diff --git a/arch/powerpc/include/asm/types.h b/arch/powerpc/include/asm/types.h
index b29ce79..6b908ec 100644
--- a/arch/powerpc/include/asm/types.h
+++ b/arch/powerpc/include/asm/types.h
@@ -56,6 +56,7 @@ typedef unsigned long phys_addr_t;
 typedef unsigned long phys_size_t;
 #endif
 
+typedef unsigned long uintptr_t;
 #endif /* __KERNEL__ */
 #endif /* __ASSEMBLY__ */
 
-- 
1.8.1.4



More information about the U-Boot mailing list