summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2017-01-16 14:04:06 (GMT)
committerBin Meng <bmeng.cn@gmail.com>2017-02-06 03:38:46 (GMT)
commitdb357236e301a580d2bd690345c0bb9ccfd3be9f (patch)
tree0efcbd65bf5db34ae36858eefed90b89fc417007 /arch
parent4b57414a628c9fb1a4ad2cf109943991569a72ce (diff)
downloadu-boot-fsl-qoriq-db357236e301a580d2bd690345c0bb9ccfd3be9f.tar.xz
x86: Fix up type sizes for 64-bit
Adjust types as needed to support 64-bit compilation. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/include/asm/posix_types.h5
-rw-r--r--arch/x86/include/asm/types.h5
2 files changed, 10 insertions, 0 deletions
diff --git a/arch/x86/include/asm/posix_types.h b/arch/x86/include/asm/posix_types.h
index 5529f32..717f6cb 100644
--- a/arch/x86/include/asm/posix_types.h
+++ b/arch/x86/include/asm/posix_types.h
@@ -16,8 +16,13 @@ typedef int __kernel_pid_t;
typedef unsigned short __kernel_ipc_pid_t;
typedef unsigned short __kernel_uid_t;
typedef unsigned short __kernel_gid_t;
+#if CONFIG_IS_ENABLED(X86_64)
+typedef unsigned long __kernel_size_t;
+typedef long __kernel_ssize_t;
+#else
typedef unsigned int __kernel_size_t;
typedef int __kernel_ssize_t;
+#endif
typedef int __kernel_ptrdiff_t;
typedef long __kernel_time_t;
typedef long __kernel_suseconds_t;
diff --git a/arch/x86/include/asm/types.h b/arch/x86/include/asm/types.h
index 880dcb4..a47e581 100644
--- a/arch/x86/include/asm/types.h
+++ b/arch/x86/include/asm/types.h
@@ -44,7 +44,12 @@ typedef __INT64_TYPE__ s64;
typedef __UINT64_TYPE__ u64;
#endif
+#if CONFIG_IS_ENABLED(X86_64)
+#define BITS_PER_LONG 64
+#else
#define BITS_PER_LONG 32
+#endif
+
/* Dma addresses are 32-bits wide. */
typedef u32 dma_addr_t;