Re: [PATCH 1/2] pinctrl: meson: a1: Use gpio regs for ds

Neil Armstrong <[email protected]>
Newsgroups org.u-boot-project.lists.u-boot,io.groups.u-boot-amlogic
Organization Linaro
Message-ID <[email protected]>
On 8/17/26 19:02, Sean Anderson wrote:
> On newer SoCs, the drivestrength registers are included with the rest of
> the GPIO registers. Linux has a rather complex system that uses a helper
> function to fix up the registers for each SoC before registering the
> pinctrl. Instead of that, just fix things up in probe.
> 
> This silences warnings like
> 
> meson-s4-pinctrl pinctrl@4000: drive-strength-microamp not supported
> 
> which I encountered on s4 and which I assume affects a1 as well.
> 
> Signed-off-by: Sean Anderson <[email protected]>
> ---
> 
>   drivers/pinctrl/meson/pinctrl-meson-a1.c | 12 +++++++++++-
>   1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/pinctrl/meson/pinctrl-meson-a1.c b/drivers/pinctrl/meson/pinctrl-meson-a1.c
> index 7e9ac6390b1..e9a7522ce50 100644
> --- a/drivers/pinctrl/meson/pinctrl-meson-a1.c
> +++ b/drivers/pinctrl/meson/pinctrl-meson-a1.c
> @@ -856,11 +856,21 @@ static const struct udevice_id meson_a1_pinctrl_match[] = {
>   	{ },
>   };
>   
> +static int meson_a1_pinctrl_probe(struct udevice *dev)
> +{
> +	struct meson_pinctrl *priv = dev_get_priv(dev);
> +	int ret = meson_pinctrl_probe(dev);
> +
> +	if (!ret)
> +		priv->reg_ds = priv->reg_gpio;

Please add a comment on why you're doing that.

Neil

> +	return ret;
> +}
> +
>   U_BOOT_DRIVER(meson_a1_pinctrl) = {
>   	.name	= "meson-a1-pinctrl",
>   	.id	= UCLASS_PINCTRL,
>   	.of_match = of_match_ptr(meson_a1_pinctrl_match),
> -	.probe = meson_pinctrl_probe,
> +	.probe = meson_a1_pinctrl_probe,
>   	.priv_auto = sizeof(struct meson_pinctrl),
>   	.ops = &meson_axg_pinctrl_ops,
>   };
> ---
> base-commit: d3e8597e46b635ec556a057bc42f0b0859654bdf
> branch: s4_pinctrl
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.