Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp315430rwd; Wed, 14 Jun 2023 16:41:54 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4NSwmwUpY49+4cGbURP565ioq9fVfFILQG+EKZn3k0SFjvF5vjh+CBM4Io25DFDzZtIf6R X-Received: by 2002:a17:907:96a0:b0:978:af9d:c004 with SMTP id hd32-20020a17090796a000b00978af9dc004mr3442869ejc.4.1686786114152; Wed, 14 Jun 2023 16:41:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1686786114; cv=none; d=google.com; s=arc-20160816; b=GekeD5aShsZpAawwyWWAKTJir2ujNp1nSjpKyrFXYcam+mrD9iF/XKkJlo4QcP3OCn 45SH1ZJs/G2Pr1PJVpULD9GnqiIH/PWwG14igvZ+MosQZOiwwQV29ptGNcw1jzldIHfO VpLy/856xVXw0ycs9yFRaeH2LP7hoJLYc6uTFdvRGPaLEkaUxHyAQdW4GgyAmq9h85qA 4b1/iPp8PZtP2XVHsemuWin+IPLcL902jlixge0YWo3vyy+HyEpPF4FrjrNcjO44SEXL 2I8wAgT7B1jOEt9YqbsXPzPXnq27r1CXS5pbaKxl4RDGL5l8CE//wIDjjT9lcRxG6c8/ Uv1Q== 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=jO82USE1Kdf/jrgu8upjxZrisEbGC9BlMAP6AsA8X8c=; b=L3DrQUTew8JGA8NnwsXMVcZwIpGGs+k8FizjVceyIv/XFMiu0miraa1af7OTHE7yaC YE8Dc/Ve5bsCvwbKgJ22Dp5lQtC9qXYk9F9oVAGya9x7LTLjNCVig/M+Adw5z6EA/Aju W5jIH4iDWGO5xCbUa+jeLEdSuMIMcOl6bAtEke1APWBe2ffIhX2vqKbvH94Yo2cjyZPu OFBOh5z4wEqMpSx1DU9rqwCb/MPWMjd50Sjmgw951+D+FHNTASJM2xcnmgTuiHWyJieV ba258klgn7mwpDFx9QYzN8IB1EhwqJamZwGpejHVvVToatBFfZGeWBw+QxXqMlvofOeK CKEw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b="n/ztUJvC"; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l26-20020a170906a41a00b0097885fbc063si8657212ejz.777.2023.06.14.16.41.29; Wed, 14 Jun 2023 16:41:54 -0700 (PDT) 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="n/ztUJvC"; 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 S237185AbjFNXSg (ORCPT + 99 others); Wed, 14 Jun 2023 19:18:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54246 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236653AbjFNXST (ORCPT ); Wed, 14 Jun 2023 19:18:19 -0400 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9C871268B; Wed, 14 Jun 2023 16:18:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1686784685; x=1718320685; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=mZEV4pzNF7qcMP4rnNrl0WbDZ2Lf7enx6Xmx0FofGFI=; b=n/ztUJvCcym7ndIL/aoxAfTbEv+GI02KUrj9MKdCcN+wbg/FLGjTMJ69 6eyXjhjcx9Io1f+isSRsJXd53iz1HTowz8w3V9Xt0Rkzr88G3Xahw1Nbo Ww7drGSQFflrI+LTHq+ynHEmxPONN8a/WidndGVkBFtfP8KAYZnBZPQ2v U2yhosdxzo/rNQttFEmdvAPhsFQfQmh9geTLIeOs4BXR4lhIQDMEWTMJT MBYvD0iiMuV18zA1kdc2m7TN1DHVmxs86bTZy93a0Eivy7tDO+aA2Iul/ aeoKd8CoEthk96dOIJteHT7Ws5E0cfcccgYxLv65k/DUCeWXOgHFymG20 g==; X-IronPort-AV: E=McAfee;i="6600,9927,10741"; a="424648049" X-IronPort-AV: E=Sophos;i="6.00,243,1681196400"; d="scan'208";a="424648049" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jun 2023 16:14:46 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10741"; a="715387934" X-IronPort-AV: E=Sophos;i="6.00,243,1681196400"; d="scan'208";a="715387934" Received: from black.fi.intel.com ([10.237.72.28]) by fmsmga007.fm.intel.com with ESMTP; 14 Jun 2023 16:14:43 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id CBF9C1E8; Thu, 15 Jun 2023 02:14:51 +0300 (EEST) From: Andy Shevchenko To: Bartosz Golaszewski , Andy Shevchenko , Alexander Stein , linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org Cc: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Geert Uytterhoeven Subject: [PATCH v2 0/4] gpio: aggregator: Incorporate gpio-delay functionality Date: Thu, 15 Jun 2023 02:14:42 +0300 Message-Id: <20230614231446.3687-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.40.0.1.gaa8946217a0b MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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_H2,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE, URIBL_BLOCKED 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 The newly appeared gpio-delay module enables external signal delay lines that may be connected to the GPIOs. But at the same time it copies the GPIO forwarder functionality. Besides that the approach does not scale. If we would have another external component, we would need yet another driver. That's why I think, and seems others support me, better to enable such a functionality inside GPIO aggregator driver. Patch 1 is a cleanup that may be applied independently on the decision about the rest. Please, test and comment! In v2: - split as a series - covered CONFIG_OF_GPIO=n case - removed the gpio-delay - moved gpio-delay Kconfig help to the comment in the code Not in v2: - updated DT description to note about long timeouts in atomic mode - sysfs hiding for gpio-delay functionality - used msleep(): the documentation is _against_ this Andy Shevchenko (4): gpio: aggregator: Remove CONFIG_OF and of_match_ptr() protections gpio: aggregator: Support delay for setting up individual GPIOs gpio: aggregator: Set up a parser of delay line parameters gpio: delay: Remove duplicative functionality drivers/gpio/Kconfig | 9 -- drivers/gpio/Makefile | 1 - drivers/gpio/gpio-aggregator.c | 109 ++++++++++++++++++++-- drivers/gpio/gpio-delay.c | 164 --------------------------------- 4 files changed, 103 insertions(+), 180 deletions(-) delete mode 100644 drivers/gpio/gpio-delay.c -- 2.40.0.1.gaa8946217a0b