
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@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__ */