Loading...
1/*
2 * Generic __div64_32 wrapper for __xdiv64_32.
3 */
4
5#include <linux/types.h>
6#include <asm/div64.h>
7
8extern uint64_t __xdiv64_32(u64 n, u32 d);
9
10uint32_t __div64_32(u64 *xp, u32 y)
11{
12 uint32_t rem;
13 uint64_t q = __xdiv64_32(*xp, y);
14
15 rem = *xp - q * y;
16 *xp = q;
17
18 return rem;
19}
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Generic __div64_32 wrapper for __xdiv64_32.
4 */
5
6#include <linux/types.h>
7#include <asm/div64.h>
8
9extern uint64_t __xdiv64_32(u64 n, u32 d);
10
11uint32_t __div64_32(u64 *xp, u32 y)
12{
13 uint32_t rem;
14 uint64_t q = __xdiv64_32(*xp, y);
15
16 rem = *xp - q * y;
17 *xp = q;
18
19 return rem;
20}