From b26c48639934453fa038b7cb2ddb55d502f4c1de Mon Sep 17 00:00:00 2001 From: Baruch Siach Date: Sun, 11 Nov 2018 12:31:00 +0200 Subject: linux/const.h: import from kernel Combine the uapi/linux/const.h header into the kernel linux/const.h. The next commit will use the _AC macro this header instead of the common.h definition. Based on Linux kernel version 4.19. Signed-off-by: Baruch Siach Reviewed-by: Tom Rini Signed-off-by: Stefan Roese --- include/linux/const.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 include/linux/const.h (limited to 'include') diff --git a/include/linux/const.h b/include/linux/const.h new file mode 100644 index 00000000000..379c8892326 --- /dev/null +++ b/include/linux/const.h @@ -0,0 +1,34 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ +#ifndef _LINUX_CONST_H +#define _LINUX_CONST_H + +/* const.h: Macros for dealing with constants. */ + +/* Some constant macros are used in both assembler and + * C code. Therefore we cannot annotate them always with + * 'UL' and other type specifiers unilaterally. We + * use the following macros to deal with this. + * + * Similarly, _AT() will cast an expression with a type in C, but + * leave it unchanged in asm. + */ + +#ifdef __ASSEMBLY__ +#define _AC(X,Y) X +#define _AT(T,X) X +#else +#define __AC(X,Y) (X##Y) +#define _AC(X,Y) __AC(X,Y) +#define _AT(T,X) ((T)(X)) +#endif + +#define _UL(x) (_AC(x, UL)) +#define _ULL(x) (_AC(x, ULL)) + +#define _BITUL(x) (_UL(1) << (x)) +#define _BITULL(x) (_ULL(1) << (x)) + +#define UL(x) (_UL(x)) +#define ULL(x) (_ULL(x)) + +#endif /* _LINUX_CONST_H */ -- cgit v1.2.3 From 5c8fd32b2295f4c502a526243ab253d1fd11c057 Mon Sep 17 00:00:00 2001 From: Baruch Siach Date: Sun, 11 Nov 2018 12:31:01 +0200 Subject: Use _AC and UL macros from linux/const.h Drop the _AC and UL macros from common.h. Linux headers is the original source of this macro, so keep its definition in the same header. Update existing users of these macros to include const.h directly. Cc: Daniel Schwierzeck Cc: Rick Chen Reviewed-by: Tom Rini Reviewed-by: Rick Chen Signed-off-by: Baruch Siach Reviewed-by: Daniel Schwierzeck Signed-off-by: Stefan Roese --- include/common.h | 9 --------- 1 file changed, 9 deletions(-) (limited to 'include') diff --git a/include/common.h b/include/common.h index 8b9f859c07f..3f699438875 100644 --- a/include/common.h +++ b/include/common.h @@ -14,9 +14,6 @@ typedef volatile unsigned long vu_long; typedef volatile unsigned short vu_short; typedef volatile unsigned char vu_char; -/* Allow sharing constants with type modifiers between C and assembly. */ -#define _AC(X, Y) (X##Y) - #include #include #include @@ -541,16 +538,10 @@ int cpu_release(u32 nr, int argc, char * const argv[]); #else /* __ASSEMBLY__ */ -/* Drop a C type modifier (like in 3UL) for constants used in assembly. */ -#define _AC(X, Y) X - #endif /* __ASSEMBLY__ */ /* Put only stuff here that the assembler can digest */ -/* Declare an unsigned long constant digestable both by C and an assembler. */ -#define UL(x) _AC(x, UL) - #ifdef CONFIG_POST #define CONFIG_HAS_POST #ifndef CONFIG_POST_ALT_LIST -- cgit v1.2.3 From b335e91bd1e92c685c4133671119fa37c4ab43cb Mon Sep 17 00:00:00 2001 From: Baruch Siach Date: Sun, 11 Nov 2018 12:31:03 +0200 Subject: linux/sizes.h: sync from kernel The kernel added SZ_4G macro in commit f2b9ba871b (arm64/kernel: kaslr: reduce module randomization range to 4 GB). Include linux/const.h for the _AC macro. Drop a local SZ_4G definition in tegra code. Cc: Tom Warren Reviewed-by: Tom Rini Signed-off-by: Baruch Siach Signed-off-by: Stefan Roese --- include/linux/sizes.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include') diff --git a/include/linux/sizes.h b/include/linux/sizes.h index ce3e8150c17..fbde0bc7e88 100644 --- a/include/linux/sizes.h +++ b/include/linux/sizes.h @@ -8,6 +8,8 @@ #ifndef __LINUX_SIZES_H__ #define __LINUX_SIZES_H__ +#include + #define SZ_1 0x00000001 #define SZ_2 0x00000002 #define SZ_4 0x00000004 @@ -44,4 +46,6 @@ #define SZ_1G 0x40000000 #define SZ_2G 0x80000000 +#define SZ_4G _AC(0x100000000, ULL) + #endif /* __LINUX_SIZES_H__ */ -- cgit v1.2.3 From 093c0ab239cd3af8d868459baac3d633e211593d Mon Sep 17 00:00:00 2001 From: Chris Packham Date: Mon, 19 Nov 2018 19:59:23 +1300 Subject: ARM: mvebu: db-88f6820: remove redundant comment After migration to Kconfig the comment about TEXT_BASE has become redundant. Signed-off-by: Chris Packham Signed-off-by: Stefan Roese --- include/configs/db-88f6820-amc.h | 5 ----- include/configs/db-88f6820-gp.h | 5 ----- 2 files changed, 10 deletions(-) (limited to 'include') diff --git a/include/configs/db-88f6820-amc.h b/include/configs/db-88f6820-amc.h index 2f1ffa2754c..e68246cc0f4 100644 --- a/include/configs/db-88f6820-amc.h +++ b/include/configs/db-88f6820-amc.h @@ -10,11 +10,6 @@ * High Level Configuration Options (easy to change) */ -/* - * TEXT_BASE needs to be below 16MiB, since this area is scrubbed - * for DDR ECC byte filling in the SPL before loading the main - * U-Boot into it. - */ #define CONFIG_SYS_TCLK 200000000 /* 200MHz */ /* diff --git a/include/configs/db-88f6820-gp.h b/include/configs/db-88f6820-gp.h index f2aa21a43e5..3900cbed2d7 100644 --- a/include/configs/db-88f6820-gp.h +++ b/include/configs/db-88f6820-gp.h @@ -10,11 +10,6 @@ * High Level Configuration Options (easy to change) */ -/* - * TEXT_BASE needs to be below 16MiB, since this area is scrubbed - * for DDR ECC byte filling in the SPL before loading the main - * U-Boot into it. - */ #define CONFIG_SYS_TCLK 250000000 /* 250MHz */ /* -- cgit v1.2.3