Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp1105227pxv; Fri, 16 Jul 2021 01:32:35 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxQKN3e9c/D83ELh1Vi8Gc0f3jmpSxDuYIbN2RKV0yXTOwuP+TtQr42qWuU22tFXF0rKqR6 X-Received: by 2002:a92:a004:: with SMTP id e4mr5333767ili.299.1626424354870; Fri, 16 Jul 2021 01:32:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626424354; cv=none; d=google.com; s=arc-20160816; b=scpt17BU7xyubhcoX0mSCGrr+lsG3lYk5/7gjIg6B2+KBQnUoapbdyy/x/3FYssCzP w2/pZHg3ZiRRuxJYxlDJ29pXzdSxL+4vrmrUQMMQZkf0SDKPMYpVEcx0VPmIZJNyGOLz nd3AjEdahYQxvGPm/XVQXVykWVHhiR3kbAMh+FmmZ9Xtq0GRf1QDS3hcngTIR6GfT2aT 890cKkF9ppROBPWJhmGHL5CSXXWbvfNddE9Z11kxCP2D+vxKfgb6OTUf1SKfaWKi9iwe zKwGT8G1j4XM7ZRxt8cjzQwpivNlWAxF6Np22DhISr/bO3reHMXpw04vHigvJHzIgMYR pAYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=HGtdpt91do0UAzKVjzqqDE3AvD/lqY8Xht/fEpMQnq0=; b=zlkndbJettMWHNmmCanObuw3Qi/prv9ZYH6QSYoigi0J+0HTESddFBrmCT3R430wiJ 1YrVz+PwTxI9o3c3Qv3myvnCwzLUO9wrqw16cWJmKKKlrz7kdb8OM5NLtb5cfBcgbaaq eOhjarpeMvSOmMN3K6tFyp4SKvmaFNTiMRqb8JPKdnDxi4VjPOSZUeA+t/W+a8xzHfYH U7P70RRSwgah24EE+BBZiMQ8hc63IV+4wU96reMDLlJKKTuc9Lqp7UlReHySCkpkqJ5A njnm+EeYV2eb1azEplv9Xs8//HO0Thw5Sr1YiN04KEwNUB02csaf1OghfFAD7nKY6hRd kFRg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=P16oRGar; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k5si9145001ioq.67.2021.07.16.01.32.23; Fri, 16 Jul 2021 01:32:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=P16oRGar; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237240AbhGPIep (ORCPT + 99 others); Fri, 16 Jul 2021 04:34:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45194 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237055AbhGPIeo (ORCPT ); Fri, 16 Jul 2021 04:34:44 -0400 Received: from mail-yb1-xb36.google.com (mail-yb1-xb36.google.com [IPv6:2607:f8b0:4864:20::b36]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CD6AAC061760 for ; Fri, 16 Jul 2021 01:31:49 -0700 (PDT) Received: by mail-yb1-xb36.google.com with SMTP id c16so6844761ybl.9 for ; Fri, 16 Jul 2021 01:31:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=HGtdpt91do0UAzKVjzqqDE3AvD/lqY8Xht/fEpMQnq0=; b=P16oRGarQytiFqfhZJBl+ZUQro/UDrWvRJMIJRxWNLceCagZTA596fayFSMH/AnHGj QTlAYO4VpCZMbgfGKnEwFHjpTZAVt+Xmp1kCh4ViFplkfDuIsrS1mZtuIz4bCJMufi1H nA5HcY2XlZU4IZn/GXXQ6r19L0OFWRmf4/jvnbHMBVM+mItS1AXlb5NI3mckzFpSWs88 Ny3/J22+ib9UC4j5kLZNJvK/1M65jsTU+sm600K4LfhmJY2GQcU8MObLT2ZDg/ry2c+D uLUTtLHogxXDhFn44cs9MsQAZ9G3d9mZ61UTsFnXP8JOIJRUwbyphx6Q67iaOFKMzrkc 7UOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=HGtdpt91do0UAzKVjzqqDE3AvD/lqY8Xht/fEpMQnq0=; b=hnUNvTM9k9bUWkJlWB0ytnv++m4hukiw8RREMWyhh3wMTXnuovO1pzXiirMmBq8BP+ rFWXWePSc7/X0QpsBWHEj6QwdKf0m3OLA3orR2tAi4EZFkd/enYcQPxh5oc2YDg8wu7k 5FOrSMl2XwkwajhoABOvOtmUZv4J/d2L4yBIflpnv/Qhermyz7pq+sJkMQjzXPNektpD 7GcGum1Fnn89Qi+gnhY1eJBrReuPBLb6Nb+3j8l5kP7uFKdjePrsR74Go81X/Ryfs20Z t9DezweBvznc2UqYn+uPp6hLbizp18GrwzT1ybRpUmey1RTQh8uJJy68Sf0gJVWf0bqv TrpQ== X-Gm-Message-State: AOAM531TaMC607YBAJE1SC3cQGwVwktcnAbhBwBfIuMdW3j8noYPggiY CakbHMJ07VKTevv/g9XVq58EfUekM8ZLlLMgfA6vNA== X-Received: by 2002:a25:487:: with SMTP id 129mr11566148ybe.0.1626424309121; Fri, 16 Jul 2021 01:31:49 -0700 (PDT) MIME-Version: 1.0 References: <2a8eb285-3b71-199c-1bf4-39fb47fac77e@nvidia.com> <1625130054-22947-1-git-send-email-akhilrajeev@nvidia.com> In-Reply-To: <1625130054-22947-1-git-send-email-akhilrajeev@nvidia.com> From: Bartosz Golaszewski Date: Fri, 16 Jul 2021 10:31:38 +0200 Message-ID: Subject: Re: [PATCH v5] gpio: tegra186: Add ACPI support To: Akhil R Cc: Jonathan Hunter , Andy Shevchenko , kyarlagadda@nvidia.com, Laxman Dewangan , Linus Walleij , linux-gpio , LKML , linux-tegra , mperttunen@nvidia.com, smangipudi@nvidia.com, Thierry Reding Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jul 1, 2021 at 11:01 AM Akhil R wrote: > > Add ACPI module ID to probe the driver from the ACPI based bootloader > firmware. > > Signed-off-by: Akhil R > Reviewed-by: Andy Shevchenko > --- > v5 changes: > * Updated ioremap_resource check as per Jon's comments. > > drivers/gpio/gpio-tegra186.c | 30 ++++++++++++++++++++++++------ > 1 file changed, 24 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpio/gpio-tegra186.c b/drivers/gpio/gpio-tegra186.c > index 1bd9e44..8a64dcb 100644 > --- a/drivers/gpio/gpio-tegra186.c > +++ b/drivers/gpio/gpio-tegra186.c > @@ -620,15 +620,21 @@ static int tegra186_gpio_probe(struct platform_device *pdev) > if (!gpio) > return -ENOMEM; > > - gpio->soc = of_device_get_match_data(&pdev->dev); > + gpio->soc = device_get_match_data(&pdev->dev); > > gpio->secure = devm_platform_ioremap_resource_byname(pdev, "security"); > - if (IS_ERR(gpio->secure)) > - return PTR_ERR(gpio->secure); > + if (IS_ERR(gpio->secure)) { > + gpio->secure = devm_platform_ioremap_resource(pdev, 0); > + if (IS_ERR(gpio->secure)) > + return PTR_ERR(gpio->secure); > + } > > gpio->base = devm_platform_ioremap_resource_byname(pdev, "gpio"); > - if (IS_ERR(gpio->base)) > - return PTR_ERR(gpio->base); > + if (IS_ERR(gpio->base)) { > + gpio->base = devm_platform_ioremap_resource(pdev, 1); > + if (IS_ERR(gpio->base)) > + return PTR_ERR(gpio->base); > + } > > err = platform_irq_count(pdev); > if (err < 0) > @@ -690,11 +696,13 @@ static int tegra186_gpio_probe(struct platform_device *pdev) > > gpio->gpio.names = (const char * const *)names; > > +#if defined(CONFIG_OF_GPIO) > gpio->gpio.of_node = pdev->dev.of_node; > gpio->gpio.of_gpio_n_cells = 2; > gpio->gpio.of_xlate = tegra186_gpio_of_xlate; > +#endif /* CONFIG_OF_GPIO */ > > - gpio->intc.name = pdev->dev.of_node->name; > + gpio->intc.name = dev_name(&pdev->dev); > gpio->intc.irq_ack = tegra186_irq_ack; > gpio->intc.irq_mask = tegra186_irq_mask; > gpio->intc.irq_unmask = tegra186_irq_unmask; > @@ -918,10 +926,20 @@ static const struct of_device_id tegra186_gpio_of_match[] = { > }; > MODULE_DEVICE_TABLE(of, tegra186_gpio_of_match); > > +static const struct acpi_device_id tegra186_gpio_acpi_match[] = { > + { .id = "NVDA0108", .driver_data = (kernel_ulong_t)&tegra186_main_soc }, > + { .id = "NVDA0208", .driver_data = (kernel_ulong_t)&tegra186_aon_soc }, > + { .id = "NVDA0308", .driver_data = (kernel_ulong_t)&tegra194_main_soc }, > + { .id = "NVDA0408", .driver_data = (kernel_ulong_t)&tegra194_aon_soc }, > + {} > +}; > +MODULE_DEVICE_TABLE(acpi, tegra186_gpio_acpi_match); > + > static struct platform_driver tegra186_gpio_driver = { > .driver = { > .name = "tegra186-gpio", > .of_match_table = tegra186_gpio_of_match, > + .acpi_match_table = tegra186_gpio_acpi_match, > }, > .probe = tegra186_gpio_probe, > .remove = tegra186_gpio_remove, > -- > 2.7.4 > Can you rebase it on top of v5.14-rc1 and resend? Bart