1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_LIMITS_H 3 #define _LINUX_LIMITS_H 4 5 #include <uapi/linux/limits.h> 6 #include <linux/types.h> 7 8 #define USHRT_MAX ((unsigned short)~0U) 9 #define SHRT_MAX ((short)(USHRT_MAX >> 1)) 10 #define SHRT_MIN ((short)(-SHRT_MAX - 1)) 11 #define INT_MAX ((int)(~0U >> 1)) 12 #define INT_MIN (-INT_MAX - 1) 13 #define UINT_MAX (~0U) 14 #define LONG_MAX ((long)(~0UL >> 1)) 15 #define LONG_MIN (-LONG_MAX - 1) 16 #define ULONG_MAX (~0UL) 17 #define LLONG_MAX ((long long)(~0ULL >> 1)) 18 #define LLONG_MIN (-LLONG_MAX - 1) 19 #define ULLONG_MAX (~0ULL) 20 #define SIZE_MAX (~(size_t)0) 21 #define PHYS_ADDR_MAX (~(phys_addr_t)0) 22 23 #define U8_MAX ((u8)~0U) 24 #define S8_MAX ((s8)(U8_MAX >> 1)) 25 #define S8_MIN ((s8)(-S8_MAX - 1)) 26 #define U16_MAX ((u16)~0U) 27 #define S16_MAX ((s16)(U16_MAX >> 1)) 28 #define S16_MIN ((s16)(-S16_MAX - 1)) 29 #define U32_MAX ((u32)~0U) 30 #define S32_MAX ((s32)(U32_MAX >> 1)) 31 #define S32_MIN ((s32)(-S32_MAX - 1)) 32 #define U64_MAX ((u64)~0ULL) 33 #define S64_MAX ((s64)(U64_MAX >> 1)) 34 #define S64_MIN ((s64)(-S64_MAX - 1)) 35 36 #endif /* _LINUX_LIMITS_H */ 37