On 13/06/2019 20:49, Nathan Huckleberry wrote:
> Clang produces the following warning
> 
> drivers/thermal/armada_thermal.c:270:33: warning: shifting a negative
> signed value is undefined [-Wshift-negative-value]
> 1 warning        reg &= ~CONTROL1_TSEN_AVG_MASK <<
> CONTROL1_TSEN_AVG_SHIFT; generated
> .
>                ~~~~~~~~~~~~~~~~~~~~~~~ ^
> 
> CONTROL1_TSEN_AVG_SHIFT is defined to be zero.
> Since shifting by zero does nothing this variable can be removed.
> 
> Cc: clang-built-li...@googlegroups.com
> Link: https://github.com/ClangBuiltLinux/linux/issues/532
> Signed-off-by: Nathan Huckleberry <nh...@google.com>

Reviewed-by: Daniel Lezcano <daniel.lezc...@linaro.org>

> ---
>  drivers/thermal/armada_thermal.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/thermal/armada_thermal.c 
> b/drivers/thermal/armada_thermal.c
> index 8c07a393dc2e..709a22f455e9 100644
> --- a/drivers/thermal/armada_thermal.c
> +++ b/drivers/thermal/armada_thermal.c
> @@ -53,7 +53,6 @@
>  #define CONTROL0_TSEN_MODE_EXTERNAL  0x2
>  #define CONTROL0_TSEN_MODE_MASK              0x3
>  
> -#define CONTROL1_TSEN_AVG_SHIFT              0
>  #define CONTROL1_TSEN_AVG_MASK               0x7
>  #define CONTROL1_EXT_TSEN_SW_RESET   BIT(7)
>  #define CONTROL1_EXT_TSEN_HW_RESETn  BIT(8)
> @@ -267,8 +266,8 @@ static void armada_cp110_init(struct platform_device 
> *pdev,
>  
>       /* Average the output value over 2^1 = 2 samples */
>       regmap_read(priv->syscon, data->syscon_control1_off, &reg);
> -     reg &= ~CONTROL1_TSEN_AVG_MASK << CONTROL1_TSEN_AVG_SHIFT;
> -     reg |= 1 << CONTROL1_TSEN_AVG_SHIFT;
> +     reg &= ~CONTROL1_TSEN_AVG_MASK;
> +     reg |= 1;
>       regmap_write(priv->syscon, data->syscon_control1_off, reg);
>  }
>  
> 


-- 
 <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

Reply via email to