Thread (3 messages) 3 messages, 3 authors, 2021-04-10

Re: [PATCH] pinctrl: samsung: use 'int' for register masks in Exynos

From: Sylwester Nawrocki <s.nawrocki@samsung.com>
Date: 2021-04-09 11:53:39
Also in: linux-gpio, linux-samsung-soc, lkml

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 <redacted>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@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

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help