From c7b6d7db092cfd925f1fb6333e166a54663310e7 Mon Sep 17 00:00:00 2001 From: Stefan Reinauer Date: Mon, 25 Mar 2013 15:03:41 -0700 Subject: [PATCH] libpayload: Fix type issues There were a number of type issues in libpayload that sneaked in with 903f8e0. - size_t and ssize_t were conflicting with gcc builtins - some stdint types were used in libpayload but not defined in our stdint.h With this patch it's possible to compile libpayload with the reference toolchain again. Change-Id: Idd5ccfdd9f3536b36bceca2d101e7405883b10bc Signed-off-by: Stefan Reinauer Reviewed-on: http://review.coreboot.org/2903 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich --- payloads/libpayload/include/armv7/arch/types.h | 4 ++-- payloads/libpayload/include/stdint.h | 8 ++++++++ payloads/libpayload/include/x86/arch/types.h | 4 ++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/payloads/libpayload/include/armv7/arch/types.h b/payloads/libpayload/include/armv7/arch/types.h index d6f4aa8b66..bb4025714f 100644 --- a/payloads/libpayload/include/armv7/arch/types.h +++ b/payloads/libpayload/include/armv7/arch/types.h @@ -53,8 +53,8 @@ typedef signed long long s64; typedef long time_t; typedef long suseconds_t; -typedef unsigned int size_t; -typedef int ssize_t; +typedef unsigned long size_t; +typedef long ssize_t; #ifndef NULL #define NULL ((void *)0) diff --git a/payloads/libpayload/include/stdint.h b/payloads/libpayload/include/stdint.h index dd7439d788..966a1ed996 100644 --- a/payloads/libpayload/include/stdint.h +++ b/payloads/libpayload/include/stdint.h @@ -29,8 +29,16 @@ #ifndef __STDINT_H #define __STDINT_H + #include +typedef long long int intmax_t; +typedef unsigned long long uintmax_t; + typedef unsigned long uintptr_t; typedef long intptr_t; + +#define UINT32_MAX (4294967295U) +#define UINT64_MAX (18446744073709551615ULL) + #endif diff --git a/payloads/libpayload/include/x86/arch/types.h b/payloads/libpayload/include/x86/arch/types.h index d6f4aa8b66..bb4025714f 100644 --- a/payloads/libpayload/include/x86/arch/types.h +++ b/payloads/libpayload/include/x86/arch/types.h @@ -53,8 +53,8 @@ typedef signed long long s64; typedef long time_t; typedef long suseconds_t; -typedef unsigned int size_t; -typedef int ssize_t; +typedef unsigned long size_t; +typedef long ssize_t; #ifndef NULL #define NULL ((void *)0)