From patchwork Tue Oct 19 15:26:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ma=C3=ADra_Canal?= X-Patchwork-Id: 12570373 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4B201C433EF for ; Tue, 19 Oct 2021 15:29:05 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 1F2C160FED for ; Tue, 19 Oct 2021 15:29:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 1F2C160FED Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=usp.br Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Subject:Cc:To: From:Date:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=p+TE13iIwVFDEqqT1TgKaXOr9tkgSPZzBixA++ZSuLM=; b=wIRkWuuqfYq11Q IJBFB/GYB9/+Qsv73gaL7vXMShHJe69kQUZfey8XKHQWRLpuCD5z7ooHINdH1bypbWbu009VSeyBq vfrPGFilOKmn91ZWh3c5X094bDre+OVBODdergMvB+xjOEFc+mArAp02wv5AWMXVX3lbBLbIFiIph zVWDVU2LwT44zd0HwN4g6X3EWoj/ybkqs7KSDnqUkmjDKY2XSLQW6lQMo/7EOn7zVI3ffUrDF57br ZE4C6Q++Vc4YT2Ot8x9Vok9PTGesDRmHpx0zVSwk6bszI4HxF1OGlJfaMa4ukq0/c5GIxQz9Fb/Fn /i23zRKq0Qiyt7LO2C1A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mcr1E-001gnV-Ag; Tue, 19 Oct 2021 15:27:12 +0000 Received: from mail-ua1-x92e.google.com ([2607:f8b0:4864:20::92e]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mcr18-001gmN-Oa for linux-arm-kernel@lists.infradead.org; Tue, 19 Oct 2021 15:27:09 +0000 Received: by mail-ua1-x92e.google.com with SMTP id a17so554865uax.12 for ; Tue, 19 Oct 2021 08:27:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=usp.br; s=usp-google; h=date:from:to:cc:subject:message-id:mime-version:content-disposition :content-transfer-encoding; bh=x/s4SsehsStXzG2XyxMH+wRFLSyjieiFKLtaVhltnaA=; b=xVBFo5/+fO2Jz7eDOQ81t4yLJhNW/y5Yxokxk1PZibz+3NRkGp/IGlDejFhKlwCss0 4ETKgV8Zd0TNX58rYC8R2JKxredPihNXWczMkulSHcLP6kgRHZvHbVp2+hZKXK5mgsRj f/jUopLySQRjFnPT5HQv1gBfII7Z3TjYu1QjkW3qDbso67Xk9EXN+OXmu9O3qmZ/9+4e 9VyFIY/FP6iOXzGyx8Ih7e1H6EF/hjlq7ZFt7fWI4M+RkbiBDvHqFKQt9vlyNw2WVsCW lV0SdqSa3rH3oWl7YL+iZAxWkbKs6iZP7F8sjP7Gz7bmO9M6OGb9aAf7E8BtRjGW2E+D eyKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition:content-transfer-encoding; bh=x/s4SsehsStXzG2XyxMH+wRFLSyjieiFKLtaVhltnaA=; b=ExJw+hDD2143CNtYyA3et9vx6mWg2JpWawSmfFfkvZ4TopAsD49w2JO4wUhXjA8acv mDAGUKkYxc7H/MDnL/5gEToP7DBW0L+ErzOjcR7BkiAUpuYe96gUbw51WrnUwTdAfnkU FpBTNwMkxhKseBLQes98XPJMhM0b0j0ICa8+QTllqjM31wBNeN6ne8qM78eSBENDNbcH XgJ74Gsw91iPXxfKrDaWs7kJslxB5wchy2uAoA86VdYq/hy50O/dNn5p9euogTwOrlrR 2pBVgFtICGsQFQeVgUXEZgej4hOd+HCWbmHgJPFvyi8dhZ90MtmnEcTgC79QIqmQQZ5b l5Sg== X-Gm-Message-State: AOAM531R9jxzUc2SknxnRvAI5EUHwkI56xTlFwkcfSZdBR24tSzIgVr+ B1h4cAGlNqwR1Zn2PdloHAr45A== X-Google-Smtp-Source: ABdhPJzXNuFvi4nT8sfMd7TdSqYw9B9bqNf0S3yxbnepdEbewU/DnhvfXG2LYf9XBeWYec0SXORigQ== X-Received: by 2002:a05:6102:a35:: with SMTP id 21mr35465813vsb.32.1634657221560; Tue, 19 Oct 2021 08:27:01 -0700 (PDT) Received: from fedora ([187.64.134.142]) by smtp.gmail.com with ESMTPSA id h13sm11535445vsj.20.2021.10.19.08.26.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 Oct 2021 08:27:01 -0700 (PDT) Date: Tue, 19 Oct 2021 12:26:53 -0300 From: =?iso-8859-1?q?Ma=EDra?= Canal To: hongxing.zhu@nxp.com, l.stach@pengutronix.de Cc: lorenzo.pieralisi@arm.com, robh@kernel.org, kw@linux.com, bhelgaas@google.com, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, inux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] pci-imx6: replacing legacy gpio interface for gpiod Message-ID: MIME-Version: 1.0 Content-Disposition: inline X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211019_082707_517453_0919FC5C X-CRM114-Status: GOOD ( 15.38 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Removing all dependencies of linux/gpio.h and linux/of_gpio.h and replacing it with linux/gpio/consumer.h Signed-off-by: MaĆ­ra Canal --- drivers/pci/controller/dwc/pci-imx6.c | 31 ++++++++++----------------- 1 file changed, 11 insertions(+), 20 deletions(-) diff --git a/drivers/pci/controller/dwc/pci-imx6.c b/drivers/pci/controller/dwc/pci-imx6.c index 80fc98acf097..e5ee54e37d05 100644 --- a/drivers/pci/controller/dwc/pci-imx6.c +++ b/drivers/pci/controller/dwc/pci-imx6.c @@ -11,13 +11,12 @@ #include #include #include -#include +#include #include #include #include #include #include -#include #include #include #include @@ -63,7 +62,7 @@ struct imx6_pcie_drvdata { struct imx6_pcie { struct dw_pcie *pci; - int reset_gpio; + struct gpio_desc *reset_gpio; bool gpio_active_high; struct clk *pcie_bus; struct clk *pcie_phy; @@ -526,11 +525,11 @@ static void imx6_pcie_deassert_core_reset(struct imx6_pcie *imx6_pcie) usleep_range(200, 500); /* Some boards don't have PCIe reset GPIO. */ - if (gpio_is_valid(imx6_pcie->reset_gpio)) { - gpio_set_value_cansleep(imx6_pcie->reset_gpio, + if (imx6_pcie->reset_gpio) { + gpiod_set_value_cansleep(imx6_pcie->reset_gpio, imx6_pcie->gpio_active_high); msleep(100); - gpio_set_value_cansleep(imx6_pcie->reset_gpio, + gpiod_set_value_cansleep(imx6_pcie->reset_gpio, !imx6_pcie->gpio_active_high); } @@ -1025,22 +1024,14 @@ static int imx6_pcie_probe(struct platform_device *pdev) return PTR_ERR(pci->dbi_base); /* Fetch GPIOs */ - imx6_pcie->reset_gpio = of_get_named_gpio(node, "reset-gpio", 0); imx6_pcie->gpio_active_high = of_property_read_bool(node, "reset-gpio-active-high"); - if (gpio_is_valid(imx6_pcie->reset_gpio)) { - ret = devm_gpio_request_one(dev, imx6_pcie->reset_gpio, - imx6_pcie->gpio_active_high ? - GPIOF_OUT_INIT_HIGH : - GPIOF_OUT_INIT_LOW, - "PCIe reset"); - if (ret) { - dev_err(dev, "unable to get reset gpio\n"); - return ret; - } - } else if (imx6_pcie->reset_gpio == -EPROBE_DEFER) { - return imx6_pcie->reset_gpio; - } + imx6_pcie->reset_gpio = devm_gpiod_get_optional(dev, "reset", + imx6_pcie->gpio_active_high ? GPIOD_OUT_HIGH : + GPIOD_OUT_LOW); + if (IS_ERR(imx6_pcie->reset_gpio)) + return dev_err_probe(dev, PTR_ERR(imx6_pcie->reset_gpio), + "unable to get reset gpio\n"); /* Fetch clocks */ imx6_pcie->pcie_phy = devm_clk_get(dev, "pcie_phy");