From 9865543ae65d7c9a435eedfc6a0ba23efb291121 Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Mon, 6 Aug 2018 20:47:38 +0900 Subject: [PATCH] Remove CONFIG_USE_STDINT You do not need to use the typedefs provided by compiler. Our compilers are either IPL32 or LP64. Hence, U-Boot can/should always use int-ll64.h typedefs like Linux kernel, whatever the typedefs the compiler internally uses. Signed-off-by: Masahiro Yamada --- README | 5 ----- arch/sandbox/include/asm/types.h | 5 ----- arch/x86/include/asm/types.h | 5 ----- config.mk | 5 ----- include/compiler.h | 5 ----- include/inttypes.h | 10 ---------- include/linux/types.h | 9 +-------- scripts/config_whitelist.txt | 1 - test/stdint/test-includes.sh | 2 -- tools/buildman/func_test.py | 2 +- 10 files changed, 2 insertions(+), 47 deletions(-) diff --git a/README b/README index 903d51416e..09822a317d 100644 --- a/README +++ b/README @@ -3015,11 +3015,6 @@ Configuration Settings: If defined, don't allow the -f switch to env set override variable access flags. -- CONFIG_USE_STDINT - If stdint.h is available with your toolchain you can define this - option to enable it. You can provide option 'USE_STDINT=1' when - building U-Boot to enable this. - The following definitions that deal with the placement and management of environment data (variable area); in general, we support the following configurations: diff --git a/arch/sandbox/include/asm/types.h b/arch/sandbox/include/asm/types.h index a10b4551fb..79c85aa5f6 100644 --- a/arch/sandbox/include/asm/types.h +++ b/arch/sandbox/include/asm/types.h @@ -41,13 +41,8 @@ typedef unsigned short u16; typedef signed int s32; typedef unsigned int u32; -#if !defined(CONFIG_USE_STDINT) || !defined(__INT64_TYPE__) typedef signed long long s64; typedef unsigned long long u64; -#else -typedef __INT64_TYPE__ s64; -typedef __UINT64_TYPE__ u64; -#endif /* * Number of bits in a C 'long' on this architecture. diff --git a/arch/x86/include/asm/types.h b/arch/x86/include/asm/types.h index a47e581fe3..7649c2bb0c 100644 --- a/arch/x86/include/asm/types.h +++ b/arch/x86/include/asm/types.h @@ -36,13 +36,8 @@ typedef unsigned short u16; typedef signed int s32; typedef unsigned int u32; -#if !defined(CONFIG_USE_STDINT) || !defined(__INT64_TYPE__) typedef signed long long s64; typedef unsigned long long u64; -#else -typedef __INT64_TYPE__ s64; -typedef __UINT64_TYPE__ u64; -#endif #if CONFIG_IS_ENABLED(X86_64) #define BITS_PER_LONG 64 diff --git a/config.mk b/config.mk index 78748cc04a..b4e4618982 100644 --- a/config.mk +++ b/config.mk @@ -62,11 +62,6 @@ ifdef FTRACE PLATFORM_CPPFLAGS += -finstrument-functions -DFTRACE endif -# Allow use of stdint.h if available -ifneq ($(USE_STDINT),) -PLATFORM_CPPFLAGS += -DCONFIG_USE_STDINT -endif - ######################################################################### RELFLAGS := $(PLATFORM_RELFLAGS) diff --git a/include/compiler.h b/include/compiler.h index 957f4b5d49..29507f9840 100644 --- a/include/compiler.h +++ b/include/compiler.h @@ -120,13 +120,8 @@ typedef unsigned int uint; #else /* !USE_HOSTCC */ -#ifdef CONFIG_USE_STDINT -/* Provided by gcc. */ -#include -#else /* Type for `void *' pointers. */ typedef unsigned long int uintptr_t; -#endif #include #include diff --git a/include/inttypes.h b/include/inttypes.h index ea731ec868..b86ad0428e 100644 --- a/include/inttypes.h +++ b/include/inttypes.h @@ -34,19 +34,9 @@ typedef wchar_t __gwchar_t; defined if explicitly requested. */ #if !defined __cplusplus || defined __STDC_FORMAT_MACROS -#ifdef CONFIG_USE_STDINT -# if __WORDSIZE == 64 -# define __PRI64_PREFIX "l" -# define __PRIPTR_PREFIX "l" -# else -# define __PRI64_PREFIX "ll" -# define __PRIPTR_PREFIX -# endif -#else /* linux/types.h always uses long long for 64-bit and long for uintptr_t */ # define __PRI64_PREFIX "ll" # define __PRIPTR_PREFIX "l" -#endif /* Macros for printing format specifiers. */ diff --git a/include/linux/types.h b/include/linux/types.h index 7c33e7adbc..1f3cd63b8f 100644 --- a/include/linux/types.h +++ b/include/linux/types.h @@ -106,8 +106,7 @@ typedef __u8 uint8_t; typedef __u16 uint16_t; typedef __u32 uint32_t; -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) && \ - (!defined(CONFIG_USE_STDINT) || !defined(__INT64_TYPE__)) +#if defined(__GNUC__) && !defined(__STRICT_ANSI__) typedef __u64 uint64_t; typedef __u64 u_int64_t; typedef __s64 int64_t; @@ -120,12 +119,6 @@ typedef __s64 int64_t; #define aligned_be64 __be64 __aligned(8) #define aligned_le64 __le64 __aligned(8) -#if defined(CONFIG_USE_STDINT) && defined(__INT64_TYPE__) -typedef __UINT64_TYPE__ uint64_t; -typedef __UINT64_TYPE__ u_int64_t; -typedef __INT64_TYPE__ int64_t; -#endif - #ifdef __KERNEL__ typedef phys_addr_t resource_size_t; #endif diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index fc37099cbe..30c79a643e 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -4633,7 +4633,6 @@ CONFIG_USE_INTERRUPT CONFIG_USE_NOR CONFIG_USE_ONENAND_BOARD_INIT CONFIG_USE_SPIFLASH -CONFIG_USE_STDINT CONFIG_UTBIPAR_INIT_TBIPA CONFIG_U_BOOT_HDR_ADDR CONFIG_U_BOOT_HDR_SIZE diff --git a/test/stdint/test-includes.sh b/test/stdint/test-includes.sh index 077bdc73a1..1db8515e82 100755 --- a/test/stdint/test-includes.sh +++ b/test/stdint/test-includes.sh @@ -46,10 +46,8 @@ try_test() { $cmd } -# Run a test with and without CONFIG_USE_STDINT try_both() { try_test $@ - try_test $@ -DCONFIG_USE_STDINT } # board arch soc path-to-gcc diff --git a/tools/buildman/func_test.py b/tools/buildman/func_test.py index 363db9d8ce..119d02cbb2 100644 --- a/tools/buildman/func_test.py +++ b/tools/buildman/func_test.py @@ -27,7 +27,7 @@ settings_data = ''' [make-flags] src=/home/sjg/c/src chroot=/home/sjg/c/chroot -vboot=USE_STDINT=1 VBOOT_DEBUG=1 MAKEFLAGS_VBOOT=DEBUG=1 CFLAGS_EXTRA_VBOOT=-DUNROLL_LOOPS VBOOT_SOURCE=${src}/platform/vboot_reference +vboot=VBOOT_DEBUG=1 MAKEFLAGS_VBOOT=DEBUG=1 CFLAGS_EXTRA_VBOOT=-DUNROLL_LOOPS VBOOT_SOURCE=${src}/platform/vboot_reference chromeos_coreboot=VBOOT=${chroot}/build/link/usr ${vboot} chromeos_daisy=VBOOT=${chroot}/build/daisy/usr ${vboot} chromeos_peach=VBOOT=${chroot}/build/peach_pit/usr ${vboot}