[U-Boot] [PATCH] linux/kernel.h: import DIV_ROUND_{DOWN, UP}_ULL from Linux
Masahiro Yamada
yamada.masahiro at socionext.com
Wed Sep 13 10:16:44 UTC 2017
These macros are useful to avoid link error on 32-bit systems.
Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
---
include/linux/kernel.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index 0b61671..87d2d95 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -57,6 +57,11 @@
#define FIELD_SIZEOF(t, f) (sizeof(((t*)0)->f))
#define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d))
+#define DIV_ROUND_DOWN_ULL(ll, d) \
+ ({ unsigned long long _tmp = (ll); do_div(_tmp, d); _tmp; })
+
+#define DIV_ROUND_UP_ULL(ll, d) DIV_ROUND_DOWN_ULL((ll) + (d) - 1, (d))
+
#if BITS_PER_LONG == 32
# define DIV_ROUND_UP_SECTOR_T(ll,d) DIV_ROUND_UP_ULL(ll, d)
#else
--
2.7.4
More information about the U-Boot
mailing list