10#define __OSAL_MATH_H__
35unsigned long long osal_div_u64(
unsigned long long dividend,
unsigned int divisor);
73unsigned long long osal_div64_u64(
unsigned long long dividend,
unsigned long long divisor);
111unsigned long long osal_div_u64_rem(
unsigned long long dividend,
unsigned int divisor);
149unsigned long long osal_div64_u64_rem(
unsigned long long dividend,
unsigned long long divisor);
165#define osal_max(x, y) \
167 __typeof__(x)_max1 = (x); \
168 __typeof__(y)_max2 = (y); \
169 (void)(&_max1 == &_max2); \
170 _max1 > _max2 ? _max1 : _max2; \
173#define osal_min(x, y) \
175 __typeof__(x)_min1 = (x); \
176 __typeof__(y)_min2 = (y); \
177 (void)(&_min1 == &_min2); \
178 _min1 < _min2 ? _min1 : _min2; \
184 if (sizeof(x) == sizeof(long)) { \
186 ret = (__x < 0) ? (-__x) : (__x); \
189 ret = (__x < 0) ? (-__x) : (__x); \
unsigned int osal_get_random_int(void)
Random number generator.
Definition osal_math.c:65
unsigned long long osal_div_u64_rem(unsigned long long dividend, unsigned int divisor)
Unsigned 64bit divide with 32bit divisor with remainder.
Definition osal_math.c:37
long long osal_div64_s64(long long dividend, long long divisor)
Signed 64bit divide with 64bit divisor.
Definition osal_math.c:31
long long osal_div_s64_rem(long long dividend, int divisor)
Signed 64bit divide with 32bit divisor with remainder.
Definition osal_math.c:47
long long osal_div_s64(long long dividend, int divisor)
Signed 64bit divide with 32bit divisor.
Definition osal_math.c:19
unsigned long long osal_div_u64(unsigned long long dividend, unsigned int divisor)
Unsigned 64bit divide with 32bit divisor.
Definition osal_math.c:13
unsigned long long osal_div64_u64(unsigned long long dividend, unsigned long long divisor)
Unsigned 64bit divide with Unsigned 64bit divisor.
Definition osal_math.c:25
unsigned long long osal_div64_u64_rem(unsigned long long dividend, unsigned long long divisor)
Unsigned 64bit divide with unsigned 64bit divisor with remainder.
Definition osal_math.c:57