[PATCH] pinctrl: samsung: use 'int' for register masks in Exynos
Sylwester Nawrocki
s.nawrocki at samsung.com
Fri Apr 9 12:53:32 BST 2021
On 08.04.2021 21:50, Krzysztof Kozlowski wrote:
> The Special Function Registers on all Exynos SoC, including ARM64, are
> 32-bit wide, so entire driver uses matching functions like readl() or
> writel(). On 64-bit ARM using unsigned long for register masks:
> 1. makes little sense as immediately after bitwise operation it will be
> cast to 32-bit value when calling writel(),
> 2. is actually error-prone because it might promote other operands to
> 64-bit.
>
> Addresses-Coverity: Unintentional integer overflow
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at canonical.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki at samsung.com>
> ---
>
> Not tested on ARM64.
I have tested it on exynos5433/tm2e and didn't notice any issues
as we could expect.
The patch looks good to me, however I would personally use u32
rather than "unsigned int", like in other places for the register
value variables.
--
Regards,
Sylwester
More information about the linux-arm-kernel
mailing list