[PATCH] pinctrl: nexell: Cannot test unsigned to be negative
Michael Nazzareno Trimarchi
michael at amarulasolutions.com
Thu Aug 7 11:19:58 CEST 2025
Hi Andrew
On Thu, Aug 7, 2025 at 11:17 AM Andrew Goodbody <andrew.goodbody at linaro.org>
wrote:
> In s5pxx18_pinctrl_set_state testing count to be negative will always
> fail as count is unsigned despite receiving the return value of a
> function that returns an int. Change count and idx to be of type int to
> allow the test to work as expected and remove the need for any implicit
> casts. Also change pin to be u32 which is what all called functions
> expect.
>
> This issue was found by Smatch.
>
>
Nice to have the link to the tool. Is it possible to have it on CI?
Michael
> Signed-off-by: Andrew Goodbody <andrew.goodbody at linaro.org>
> ---
> drivers/pinctrl/nexell/pinctrl-s5pxx18.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/pinctrl/nexell/pinctrl-s5pxx18.c
> b/drivers/pinctrl/nexell/pinctrl-s5pxx18.c
> index e7d0994f29e..a6ae5764fbc 100644
> --- a/drivers/pinctrl/nexell/pinctrl-s5pxx18.c
> +++ b/drivers/pinctrl/nexell/pinctrl-s5pxx18.c
> @@ -130,7 +130,8 @@ static int is_pin_alive(const char *name)
> static int s5pxx18_pinctrl_set_state(struct udevice *dev,
> struct udevice *config)
> {
> - unsigned int count, idx, pin;
> + u32 pin;
> + int count, idx;
> unsigned int pinfunc, pinpud, pindrv;
> unsigned long reg;
> const char *name;
>
> ---
> base-commit: 3526f990b77fca1c933f1d8b24eb9385010a05bf
> change-id: 20250807-pinctrl_nexell-bc6669ff52e9
>
> Best regards,
> --
> Andrew Goodbody <andrew.goodbody at linaro.org>
>
>
--
Michael Nazzareno Trimarchi
Co-Founder & Chief Executive Officer
M. +39 347 913 2170
michael at amarulasolutions.com
__________________________________
Amarula Solutions BV
Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
T. +31 (0)85 111 9172
info at amarulasolutions.com
www.amarulasolutions.com
More information about the U-Boot
mailing list