Received: by 2002:ac8:3b51:0:b0:3f3:9eb6:4eb6 with SMTP id r17csp4233965qtf; Wed, 21 Jun 2023 03:51:45 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7SF9nUj/jRzLQhUKGorOnFy+CULWSRaemtAbVHZe/mGrRemewmrGaa7hzzuuFkIX8eDnh7 X-Received: by 2002:a92:d686:0:b0:338:b798:75b2 with SMTP id p6-20020a92d686000000b00338b79875b2mr11808063iln.26.1687344705172; Wed, 21 Jun 2023 03:51:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687344705; cv=none; d=google.com; s=arc-20160816; b=XlyGtNXQ0/x4dULRz67p4PfSeqCoa/ORlh4dytI+sAhzGhk2gUrRLphIboxrhNlrh+ xM4Gc3+k21WSO2vu8wVXguk7iTqjmLMFEFQAS3wD0AA8CQzhAwNGyPoEzy9/nGCjxkeH qTG7L7AYQzZzKMEhdyQys35ttMHZALSj4sqSwxH6p3xfOnVHYAkOP4jgVpaciy1Mm2sb MCti8PnPN/dNnE2IuiE8717x0P8olBZHN8WWDK1sG8XHMVkt6uFG4m7xlInmy3I6onER 3xB+1DTrIa9Arfz3blasfskTKXWtrhELhxH7GM1NLIqcauvfpS3shjLe6l8hFsgrDcbx g08A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=BWh3n++2Z5Baij0+d6K1ZNVIGZc76KVkxY2JAT2uwbE=; b=FLnquD+RWBt2qh/Q8DLvHKB+sxmMqqEIedOTKbJzK0FeFqwUM/DOo0RyNRu2BfPxSc z4x27VvVUuf+F+klG/02DIb+AuIqmfUkeYWIPlpRexq1EHAZsTMkXogQardPm2cHY5MK 5trOGfFP47ZLNZmXfSw35u6olVJbIrCprTuu0X6cq6+nvjiSmv1VapONV9OmG/E3ASIc jCoCYIe6cl+yDwDmB5PsBJqyYwkREnhReNhiU0WJrYYfgEseWyoQZ0PlktILYlmh9I2O 7S+JlWQ5PPzvZPJekUT6NeHHaiTY3ASSdtI02aqZqGPbgHRMoZs+6vc9nAfTHcJRhAFa wYoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="cD8Zn/rm"; 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=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id a21-20020a17090ad81500b0025bc7a10042si3956068pjv.159.2023.06.21.03.51.33; Wed, 21 Jun 2023 03:51:45 -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=@kernel.org header.s=k20201202 header.b="cD8Zn/rm"; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229945AbjFUKfZ (ORCPT + 99 others); Wed, 21 Jun 2023 06:35:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232217AbjFUKet (ORCPT ); Wed, 21 Jun 2023 06:34:49 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 244AF30DD; Wed, 21 Jun 2023 03:32:24 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id AE070614F5; Wed, 21 Jun 2023 10:32:23 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 64D93C433C9; Wed, 21 Jun 2023 10:32:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1687343543; bh=hMshcCHgU6cWWCxkVJqWVDGfY9Sv/m+TXQzv8roldis=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=cD8Zn/rmoMj91WfJF9JmRD9SPPLMGqDsihW2Ka0iMznqO15dcSOIVkFbICpPi9/d0 jAVmz1c1JZGYCX8wKPAF0CYeOjE2JS0DpYCSBWhZ3hFz5myDu7I482/iAamiOF3uMx GJHbFGPI+tKUDjsDEygZy20/2elB2hkD14KkJ2v5vqvDT5TYf9m7+Wu8+Ssb9iPQLO Me7jph3l6LFizlqV3aNZGhh0m4Cf9CTPpU6Xegl2jxEMRiYS5QELAtNE9AyAs6NPmE zyEPXpiFi3u+wJ6dRCIoXsmTGw29oHf33thELRlX/pvXdWT6F0tF2b3CG7pQbzogLO +2hsNhmrJCgyQ== Date: Wed, 21 Jun 2023 12:32:19 +0200 From: Andi Shyti To: Svyatoslav Ryhel Cc: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Wolfram Sang , =?utf-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= , linux-i2c@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 2/2] i2c: Add GPIO-based hotplug gate Message-ID: <20230621103219.o2u33nsok7zngikf@intel.intel> References: <20230619153732.46258-1-clamor95@gmail.com> <20230619153732.46258-3-clamor95@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230619153732.46258-3-clamor95@gmail.com> X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE 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 Hi, On Mon, Jun 19, 2023 at 06:37:32PM +0300, Svyatoslav Ryhel wrote: > From: Michał Mirosław > > Implement driver for hot-plugged I2C busses, where some devices on > a bus are hot-pluggable and their presence is indicated by GPIO line. > > Co-developed-by: Ion Agorria > Signed-off-by: Ion Agorria > Signed-off-by: Michał Mirosław > Signed-off-by: Svyatoslav Ryhel > --- > drivers/i2c/Kconfig | 11 ++ > drivers/i2c/Makefile | 1 + > drivers/i2c/i2c-hotplug-gpio.c | 266 +++++++++++++++++++++++++++++++++ > 3 files changed, 278 insertions(+) > create mode 100644 drivers/i2c/i2c-hotplug-gpio.c without going through the code I am missing the big picture here. What is this actually doing? Is this a new bus driver support? Is this a feature to existing drivers? Is the GPIO an irq line for signalling hoplugging and can be used by any driver or just this one? Without further discussing technicalities, can you please explain better and more in detail what is the scope of this patch, why there is a need for such a patch, how this new driver/feature has been implemented and finally how it can be used. This would help a lot so that I know already beforehand what I am going to read without figuring it out. Thanks, Andi PS Please notice that my set of questions is even longer than your commit log :)