diff options
author | Dominik Sliwa <dominik.sliwa@toradex.com> | 2017-11-21 12:59:41 +0000 |
---|---|---|
committer | Dominik Sliwa <dominik.sliwa@toradex.com> | 2017-12-22 09:40:23 +0000 |
commit | e34cb44ac7c08783b98a16eec70125e205e6eb12 (patch) | |
tree | 1101d23f1a73e5627ae187b07c7a0cf8826e10d1 /backport-include/linux/math64.h |
initial commit
Generated againts 4.14 kernel source with
git backports 1d8cc151d365582b42be00af776270b834a7a37d
Diffstat (limited to 'backport-include/linux/math64.h')
-rw-r--r-- | backport-include/linux/math64.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/backport-include/linux/math64.h b/backport-include/linux/math64.h new file mode 100644 index 0000000..4aeb0df --- /dev/null +++ b/backport-include/linux/math64.h @@ -0,0 +1,27 @@ +#ifndef __BACKPORT_LINUX_MATH64_H +#define __BACKPORT_LINUX_MATH64_H +#include_next <linux/math64.h> + +#if LINUX_VERSION_IS_LESS(3,12,0) + +#if BITS_PER_LONG == 64 +/** + * div64_u64_rem - unsigned 64bit divide with 64bit divisor and remainder + */ +#define div64_u64_rem LINUX_BACKPORT(div64_u64_rem) +static inline u64 div64_u64_rem(u64 dividend, u64 divisor, u64 *remainder) +{ + *remainder = dividend % divisor; + return dividend / divisor; +} +#elif BITS_PER_LONG == 32 +#ifndef div64_u64_rem +#define div64_u64_rem LINUX_BACKPORT(div64_u64_rem) +#define backports_div64_u64_rem_add 1 +extern u64 div64_u64_rem(u64 dividend, u64 divisor, u64 *remainder); +#endif + +#endif /* BITS_PER_LONG */ +#endif /* < 3.12 */ + +#endif /* __BACKPORT_LINUX_MATH64_H */ |