Re: [PATCH] clk: meson: fix SET_PARM macro

From: Kevin Hilman
Date: Tue Feb 28 2017 - 13:14:59 EST


Jerome Brunet <jbrunet@xxxxxxxxxxxx> writes:

> parameter val is not enclosed in parenthesis which is buggy when given an
> expression instead of a simple value
>
> Signed-off-by: Jerome Brunet <jbrunet@xxxxxxxxxxxx>

Reviewed-by: Kevin Hilman <khilman@xxxxxxxxxxxx>

> ---
> drivers/clk/meson/clkc.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/clk/meson/clkc.h b/drivers/clk/meson/clkc.h
> index 9bb70e7a7d6a..c6be77dd8694 100644
> --- a/drivers/clk/meson/clkc.h
> +++ b/drivers/clk/meson/clkc.h
> @@ -25,7 +25,7 @@
> #define PARM_GET(width, shift, reg) \
> (((reg) & SETPMASK(width, shift)) >> (shift))
> #define PARM_SET(width, shift, reg, val) \
> - (((reg) & CLRPMASK(width, shift)) | (val << (shift)))
> + (((reg) & CLRPMASK(width, shift)) | ((val) << (shift)))
>
> #define MESON_PARM_APPLICABLE(p) (!!((p)->width))