Re: [v2 PATCH] PCI: aardvark: switch to using devm_gpiod_get_optional()

From: Bjorn Helgaas
Date: Wed Dec 07 2022 - 09:33:58 EST


On Mon, Nov 14, 2022 at 10:42:25AM -0800, Dmitry Torokhov wrote:
> Switch the driver to the generic version of gpiod API (and away from
> OF-specific variant), so that we can stop exporting
> devm_gpiod_get_from_of_node().
>
> Acked-by: Pali Rohár <pali@xxxxxxxxxx>
> Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

This is unrelated to other pending aardvark changes and will help
unblock the API removal, so I applied this to pci/ctrl/aardvark for
v6.2, thanks!

> ---
>
> v2:
> - collected reviewed-by/acked-by tags
> - updated commit description to remove incorrect assumption of why
> devm_gpiod_get_from_of_node() was used in the first place
>
> This is the last user of devm_gpiod_get_from_of_node() in the mainline
> (next), it would be great to have it in so that we can remove the API in
> the next release cycle.
>
> Thanks!
>
>
> drivers/pci/controller/pci-aardvark.c | 23 +++++++++++------------
> 1 file changed, 11 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/pci/controller/pci-aardvark.c b/drivers/pci/controller/pci-aardvark.c
> index ba36bbc5897d..5ecfac23c9fc 100644
> --- a/drivers/pci/controller/pci-aardvark.c
> +++ b/drivers/pci/controller/pci-aardvark.c
> @@ -1859,20 +1859,19 @@ static int advk_pcie_probe(struct platform_device *pdev)
> return ret;
> }
>
> - pcie->reset_gpio = devm_gpiod_get_from_of_node(dev, dev->of_node,
> - "reset-gpios", 0,
> - GPIOD_OUT_LOW,
> - "pcie1-reset");
> + pcie->reset_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW);
> ret = PTR_ERR_OR_ZERO(pcie->reset_gpio);
> if (ret) {
> - if (ret == -ENOENT) {
> - pcie->reset_gpio = NULL;
> - } else {
> - if (ret != -EPROBE_DEFER)
> - dev_err(dev, "Failed to get reset-gpio: %i\n",
> - ret);
> - return ret;
> - }
> + if (ret != -EPROBE_DEFER)
> + dev_err(dev, "Failed to get reset-gpio: %i\n",
> + ret);
> + return ret;
> + }
> +
> + ret = gpiod_set_consumer_name(pcie->reset_gpio, "pcie1-reset");
> + if (ret) {
> + dev_err(dev, "Failed to set reset gpio name: %d\n", ret);
> + return ret;
> }
>
> ret = of_pci_get_max_link_speed(dev->of_node);
> --
> 2.38.1.431.g37b22c650d-goog
>
>
> --
> Dmitry
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel