[PATCH] pinctrl: rockchip: improve error message for incorrect rockchip,pins property

Heiko Stübner heiko at sntech.de
Wed Oct 2 06:24:06 PDT 2024


Am Mittwoch, 2. Oktober 2024, 14:03:03 CEST schrieb Quentin Schulz:
> From: Quentin Schulz <quentin.schulz at cherry.de>
> 
> If one improperly writes a rockchip,pins property, the pinctrl driver
> basically just states that one in the myriad of pinctrl nodes is
> improper but does not tell you which one.
> 
> Instead, let's print the full name of the Device Tree node that is
> improper as well as provide more context on what the expected content
> is.
> 
> Note that this should be rather unnecessary if one reads the output of
> the dtbs_check as it would be highlighted as an error.

Nevertheless, having a more helpful error message in the case this
happens is still nice to have

Reviewed-by: Heiko Stuebner <heiko at sntech.de>


> Signed-off-by: Quentin Schulz <quentin.schulz at cherry.de>
> ---
>  drivers/pinctrl/pinctrl-rockchip.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/pinctrl/pinctrl-rockchip.c b/drivers/pinctrl/pinctrl-rockchip.c
> index 5c1bc4d5b662ed403ea5c8e57a8e1cad913a31a5..04e85a6037c93f415670b286f91fccada0d38fbf 100644
> --- a/drivers/pinctrl/pinctrl-rockchip.c
> +++ b/drivers/pinctrl/pinctrl-rockchip.c
> @@ -3227,7 +3227,9 @@ static int rockchip_pinctrl_parse_groups(struct device_node *np,
>  	/* we do not check return since it's safe node passed down */
>  	size /= sizeof(*list);
>  	if (!size || size % 4)
> -		return dev_err_probe(dev, -EINVAL, "wrong pins number or pins and configs should be by 4\n");
> +		return dev_err_probe(dev, -EINVAL,
> +				     "%pOF: rockchip,pins: expected one or more of <bank pin mux CONFIG>, got %d args instead\n",
> +				     np, size);
>  
>  	grp->npins = size / 4;
>  
> 
> ---
> base-commit: e32cde8d2bd7d251a8f9b434143977ddf13dcec6
> change-id: 20241002-pinctrl-rockchip-error-modulo-4-8fb1affc063a
> 
> Best regards,
> 







More information about the Linux-rockchip mailing list