[PATCH 02/10] brcmstb_gisb: Replace "hweight_long(mask) != 1" with "!is_power_of_2(mask)"
Florian Fainelli
f.fainelli at gmail.com
Mon Dec 14 11:55:55 PST 2015
On 06/12/15 02:11, Zhaoxiu Zeng wrote:
> From: Zeng Zhaoxiu <zhaoxiu.zeng at gmail.com>
is_power_of_2, AFAICT does not handle the case where the mask to be
tested for is zero, which is why I went with hweight_long() in the first
place.
Without further explanation as to whether we should prefer
is_power_of_2(), NAK.
>
> Signed-off-by: Zeng Zhaoxiu <zhaoxiu.zeng at gmail.com>
> ---
> drivers/bus/brcmstb_gisb.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/bus/brcmstb_gisb.c b/drivers/bus/brcmstb_gisb.c
> index f364fa4..2816a04 100644
> --- a/drivers/bus/brcmstb_gisb.c
> +++ b/drivers/bus/brcmstb_gisb.c
> @@ -24,6 +24,7 @@
> #include <linux/of.h>
> #include <linux/bitops.h>
> #include <linux/pm.h>
> +#include <linux/log2.h>
>
> #ifdef CONFIG_ARM
> #include <asm/bug.h>
> @@ -171,7 +172,7 @@ brcmstb_gisb_master_to_str(struct brcmstb_gisb_arb_device *gdev,
> {
> u32 mask = gdev->valid_mask & masters;
>
> - if (hweight_long(mask) != 1)
> + if (!is_power_of_2(mask))
> return NULL;
>
> return gdev->master_names[ffs(mask) - 1];
>
--
Florian
More information about the linux-arm-kernel
mailing list