Merge git://git.infradead.org/~dedekind/ubi-2.6
[linux-2.6] / arch / sh / lib / div64-generic.c
1 /*
2  * Generic __div64_32 wrapper for __xdiv64_32.
3  */
4
5 #include <linux/types.h>
6
7 extern uint64_t __xdiv64_32(u64 n, u32 d);
8
9 uint32_t __div64_32(u64 *xp, u32 y)
10 {
11         uint32_t rem;
12         uint64_t q = __xdiv64_32(*xp, y);
13
14         rem = *xp - q * y;
15         *xp = q;
16
17         return rem;
18 }