From patchwork Tue Nov 8 13:38:52 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 17042 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp2712143wru; Tue, 8 Nov 2022 05:41:10 -0800 (PST) X-Google-Smtp-Source: AMsMyM6QNcle0ylLbsqP7nE3aodkpHfu8/350pQvilBFjA6trNJwzU29u0DchfpNwYUQgQNiycqX X-Received: by 2002:a17:907:1de6:b0:7a5:ea4b:ddbb with SMTP id og38-20020a1709071de600b007a5ea4bddbbmr53350422ejc.757.1667914870661; Tue, 08 Nov 2022 05:41:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1667914870; cv=none; d=google.com; s=arc-20160816; b=DTN/GmwRD6oinIAGQdaeWQrtkYttqnb5wQVgwFrr3YxwrEfrHCb9jurorAXL94OTTL QqQTM+6AXNNlHHeomY7anuufjc5hIh3ojOcPPQKWukYyio3JGthJV403cZ6XNa6V8NLz KPzTHhgo84h5ug8T8BzlyoLUsP+6jFpDVj/3KbYwDTSyheZI4gZ/2obeC/0UUmCCFaDm +LFAlqGBp5s4HFBbRpVc7+Dv73Arb4fqD01zJMGKa2rdiCMDrWPaY50rqVX8uFADMHHA Qw0yWu+wGlFfso9477a7tswZdo4icqyimwpcF3YpCAN3pCb9WtMNEDSYTHj+XAaa8Byb E15w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=CBf4sh6Fo80YglTUhflYEs4LePXA26PCKaVqyeUVJFg=; b=CsYLmFgJVD53p/3E3uFG8zKGeH9+vDiU5fTldiGLkB0MtIeW/ZC/sy7TYIOphNiWBx ZGdne+ZIx0KSkhWi1HZvgGujC5+B1cLmh4/kvQgP3dEQXgYibaq1rbGGcMSNFaYachVq M6Y6PmgaBQc5sjJrSGRtfixM11/MB7bFb0HnBwO/utDHEL0ZbM3cuYkZbkQDCiDeQmaq nkUUfEVXe9iaxC0UzBLgOIOalXV70iHLfDmwLWaPE8WceDSNrmXOHPbWnoDEVRE3IcwD rxj3O/k2/7cp3Pryp5wyaCYSsAKIcGweSA+hicXgt3gxpw1kDFCZyQ66klu1v6skkVsS eqDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=W3sbYhR8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p8-20020a056402074800b00461f1c61f1esi11821077edy.386.2022.11.08.05.40.41; Tue, 08 Nov 2022 05:41:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=W3sbYhR8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233853AbiKHNig (ORCPT + 99 others); Tue, 8 Nov 2022 08:38:36 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37628 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233838AbiKHNie (ORCPT ); Tue, 8 Nov 2022 08:38:34 -0500 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 03D5E140A5; Tue, 8 Nov 2022 05:38:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1667914713; x=1699450713; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=y5ikHZVDzBDAbzXZVQX8BOA8McQsKuEoNy6zaj2sDcE=; b=W3sbYhR8I9r6umV3qD0KSslXzg083T84gQl5SWAj9PHE5TS2RuXK/Ixm OFhb7n1vjy5UYdWad1duz/GDofLxjjPvUjTon1xrntOW+USd8cuoUmGGV dFE59UjllPPCcu24O1cOtriCPkhx4oCPbgta2hzDWK3IuytLvY93x5Mfx GR9w3kOTZW4mLFpD/xSkEqX+p6JS57BhkvCdyiSnVYc2OQmp9Q3sVBABB 9CO7p/Z4oFrh65FFkGjX3Tjr6H09OORFiEvl0xvcRNESe22WlqcMcrb43 hMrzqYpb6WJfBPGc/J6HiB59mRHxrqIBQ2HXsahPN18KGPnJldbwYliTA g==; X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="311848580" X-IronPort-AV: E=Sophos;i="5.96,147,1665471600"; d="scan'208";a="311848580" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Nov 2022 05:38:32 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10524"; a="614280814" X-IronPort-AV: E=Sophos;i="5.96,147,1665471600"; d="scan'208";a="614280814" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga006.jf.intel.com with ESMTP; 08 Nov 2022 05:38:30 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id B7BC615C; Tue, 8 Nov 2022 15:38:54 +0200 (EET) From: Andy Shevchenko To: Bartosz Golaszewski , Dmitry Torokhov , Andy Shevchenko , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Linus Walleij Subject: [PATCH v2 1/2] gpiolib: of: Prepare of_gpiochip_add() / of_gpiochip_remove() for fwnode Date: Tue, 8 Nov 2022 15:38:52 +0200 Message-Id: <20221108133853.61884-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748935503396895988?= X-GMAIL-MSGID: =?utf-8?q?1748935503396895988?= GPIO library is getting rid of of_node, fwnode should be utilized instead. Prepare of_gpiochip_add() / of_gpiochip_remove() for fwnode. Signed-off-by: Andy Shevchenko Reviewed-by: Dmitry Torokhov Reviewed-by: Linus Walleij Tested-by: Marek Szyprowski --- v2: added tag (Dmitry) drivers/gpio/gpiolib-of.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) base-commit: 80280df758c1498485988b30cf6887fde7796056 diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c index be9c34cca322..000020eb78d8 100644 --- a/drivers/gpio/gpiolib-of.c +++ b/drivers/gpio/gpiolib-of.c @@ -1104,9 +1104,11 @@ static int of_gpiochip_add_pin_range(struct gpio_chip *chip) { return 0; } int of_gpiochip_add(struct gpio_chip *chip) { + struct device_node *np; int ret; - if (!chip->of_node) + np = to_of_node(chip->fwnode); + if (!np) return 0; if (!chip->of_xlate) { @@ -1123,18 +1125,18 @@ int of_gpiochip_add(struct gpio_chip *chip) if (ret) return ret; - of_node_get(chip->of_node); + fwnode_handle_get(chip->fwnode); ret = of_gpiochip_scan_gpios(chip); if (ret) - of_node_put(chip->of_node); + fwnode_handle_put(chip->fwnode); return ret; } void of_gpiochip_remove(struct gpio_chip *chip) { - of_node_put(chip->of_node); + fwnode_handle_put(chip->fwnode); } void of_gpio_dev_init(struct gpio_chip *gc, struct gpio_device *gdev)