[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <51d00894-301f-6e0f-785e-3ff3a17a635f@nvidia.com>
Date: Wed, 7 Jun 2023 12:46:42 +0100
From: Jon Hunter <jonathanh@...dia.com>
To: Prathamesh Shete <pshete@...dia.com>, linus.walleij@...aro.org,
brgl@...ev.pl, thierry.reding@...il.com,
linux-tegra@...r.kernel.org, linux-gpio@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: smangipudi@...dia.com, Manish Bhardwaj <mbhardwaj@...dia.com>
Subject: Re: [PATCH v2] gpio: tegra186: Check PMC driver status before any
request
On 07/06/2023 12:31, Prathamesh Shete wrote:
> When the PMC device is disabled, probing of the Tegra186 GPIO driver
> fails because the IRQ domain that is registered by the PMC driver is
> not found. The PMC IRQ domain is only used for wake-up and does not
> impact GPIO functionality in general. Therefore, if the PMC device is
> disabled, skip looking up the PMC IRQ domain to allow the GPIO driver
> to be probed.
>
> Signed-off-by: Manish Bhardwaj <mbhardwaj@...dia.com>
> Signed-off-by: Prathamesh Shete <pshete@...dia.com>
> ---
> drivers/gpio/gpio-tegra186.c | 14 +++++++++-----
> 1 file changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpio/gpio-tegra186.c b/drivers/gpio/gpio-tegra186.c
> index 464b0ea3b6f1..80d08ddde40e 100644
> --- a/drivers/gpio/gpio-tegra186.c
> +++ b/drivers/gpio/gpio-tegra186.c
> @@ -964,11 +964,15 @@ static int tegra186_gpio_probe(struct platform_device *pdev)
>
> np = of_find_matching_node(NULL, tegra186_pmc_of_match);
> if (np) {
> - irq->parent_domain = irq_find_host(np);
> - of_node_put(np);
> -
> - if (!irq->parent_domain)
> - return -EPROBE_DEFER;
> + if (of_device_is_available(np)) {
> + irq->parent_domain = irq_find_host(np);
> + of_node_put(np);
> +
> + if (!irq->parent_domain)
> + return -EPROBE_DEFER;
> + } else {
> + of_node_put(np);
> + }
> }
>
> irq->map = devm_kcalloc(&pdev->dev, gpio->gpio.ngpio,
Thanks!
Reviewed-by: Jon Hunter <jonathanh@...dia.com>
Jon
--
nvpublic
Powered by blists - more mailing lists