log2: Fix declaration of __roundup_pow_of_two
The roundup_pow_of_two function is making use of __roundup_pow_of_two when the call to __builtin_constant_p fails, which is not implemented in barebox. Copied the code from Linux log2.h header. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
91786b5bc8
commit
4f105dd774
|
@ -54,6 +54,15 @@ bool is_power_of_2(unsigned long n)
|
||||||
return (n != 0 && ((n & (n - 1)) == 0));
|
return (n != 0 && ((n & (n - 1)) == 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* round up to nearest power of two
|
||||||
|
*/
|
||||||
|
static inline __attribute__((const))
|
||||||
|
unsigned long __roundup_pow_of_two(unsigned long n)
|
||||||
|
{
|
||||||
|
return 1UL << fls(n - 1);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ilog2 - log of base 2 of 32-bit or a 64-bit unsigned value
|
* ilog2 - log of base 2 of 32-bit or a 64-bit unsigned value
|
||||||
* @n - parameter
|
* @n - parameter
|
||||||
|
|
Loading…
Reference in New Issue