Re: [PATCH v2] gpio: tegra186: Add ACPI support

From: Akhil R
Date: Mon Jun 21 2021 - 11:07:56 EST



Thanks Andy for the suggestions. Few thoughts I have below.

>What about doing like

> gpio->secure = devm_platform_ioremap_resource_byname(pdev, "security");
> if (IS_ERR(gpio->secure))
> gpio->secure = devm_platform_ioremap_resource(pdev, 0);
> if (IS_ERR(gpio->secure))
> return PTR_ERR(gpio->secure);
>
>and similar for gpio->base?

Wouldn't this cause a redundant check if it had already succeeded in getting
the resource by name? Also, could it happen that if the device tree is
incorrect, then one of the resource is fetched by name and other by the index,
which I guess, would mess things up. Just my random thoughts, not sure if it
is valid enough.

>Wouldn't the following be enough?
>
>- gpio->intc.name = pdev->dev.of_node->name;
>+ gpio->intc.name = devm_kasprintf(&pdev->dev, "%pfw",
>dev_fwnode(&pdev->dev));
>+ if (!gpio->intc.name)
>+

How about this way? I feel it would be right to add the OF functions conditionally.

+ if (pdev->dev.of_node) {
+ gpio->gpio.of_node = pdev->dev.of_node;
+ gpio->gpio.of_gpio_n_cells = 2;
+ gpio->gpio.of_xlate = tegra186_gpio_of_xlate;
+ }

+ gpio->intc.name = gpio->soc->name;

--
Best Regards,
Akhil