/* Public domain. */ #ifndef _LINUX_MATH64_H #define _LINUX_MATH64_H #include #include static inline uint64_t div_u64(uint64_t x, uint32_t y) { return (x / y); } static inline int64_t div_s64(int64_t x, int64_t y) { return (x / y); } static inline uint64_t div64_u64(uint64_t x, uint64_t y) { return (x / y); } static inline uint64_t div64_u64_rem(uint64_t x, uint64_t y, uint64_t *rem) { *rem = x % y; return (x / y); } static inline uint64_t div_u64_rem(uint64_t x, uint32_t y, uint32_t *rem) { *rem = x % y; return (x / y); } static inline int64_t div64_s64(int64_t x, int64_t y) { return (x / y); } static inline uint64_t mul_u32_u32(uint32_t x, uint32_t y) { return (uint64_t)x * y; } static inline uint64_t mul_u64_u32_div(uint64_t x, uint32_t y, uint32_t div) { return (x * y) / div; } #endif