From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C62F51EA7E2; Thu, 6 Feb 2025 13:32:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=140.211.166.183 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738848725; cv=none; b=pMe4BOt8YheXK4o29wZ8uZqJB5RQOEG6jh3dkh0lyBmbnXOM1qbDE3YLyGwhaCoeC/nKZXKUe1hHRbB1Xi95M+w4HSHna0fFEUeFKt0QGAPMJ6CzQugxBPoKFs1rKlydJJ9DZLXL4v6JhjLvJVQZWPeNGP0z6Snu/EpTW6mgvQA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738848725; c=relaxed/simple; bh=45yT85WTqRhzxnDZFfHXU5w/YSy+M3a+25Xbs44fDYc=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=s9WpLUepoqWFQEu9/VdNGLdi6uFOy6VA/ssqRPs3Nap/d3WjPKsKIfsJydH91ksvTlvEr6rzLpMiHit2IrEKONaIKsrHtVPRhotBq4pqsPl3cGNsDCoi/9dx2VauOW0vdCEsyskmG8VnBguapleenNdZLrI8et/0rl1wgZTKHN0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gentoo.org; spf=pass smtp.mailfrom=gentoo.org; arc=none smtp.client-ip=140.211.166.183 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gentoo.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gentoo.org Received: from localhost (unknown [180.172.76.141]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: dlan) by smtp.gentoo.org (Postfix) with ESMTPSA id E15F4342FF5; Thu, 06 Feb 2025 13:32:01 +0000 (UTC) Date: Thu, 6 Feb 2025 13:31:56 +0000 From: Yixun Lan To: Linus Walleij Cc: Rob Herring , Olof Johansson , Bartosz Golaszewski , Krzysztof Kozlowski , Conor Dooley , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Yangyu Chen , Jisheng Zhang , Jesse Taube , Inochi Amaoto , Icenowy Zheng , Meng Zhang , linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Subject: Re: [PATCH v4 1/4] dt-bindings: gpio: spacemit: add support for K1 SoC Message-ID: <20250206133156-GYA5687@gentoo> References: <20250121-03-k1-gpio-v4-0-4641c95c0194@gentoo.org> <20250121-03-k1-gpio-v4-1-4641c95c0194@gentoo.org> <20250123113042-GYA38135@gentoo> <20250127181726.GA538260-robh@kernel.org> <20250128031712-GYB47737@gentoo> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Hi Linus and DT maintainers: On 10:18 Thu 06 Feb , Linus Walleij wrote: > Hi Yixun, > > On Tue, Jan 28, 2025 at 5:03 PM Linus Walleij wrote: > > On Tue, Jan 28, 2025 at 4:17 AM Yixun Lan wrote: > > > > > [Rob] > > > > If Linux can't handle 1 node for N gpio_chip's, then that's a Linux > > > > problem. Maybe it can, IDK. > > > > > > I haven't seen somthing like this to register 1 node for multi gpio_chips.. > > > To gpio/pinctrl maintainer (Linus Walleij), do you have suggestion on this? > > > > For Linux we can call bgpio_init() three times and > > devm_gpiochip_add_data() three times on the result and if we use the > > approach with three cells (where the second is instance 0,1,2 and the > > last one the offset 0..31) then it will work all just the same I guess? > > both bgpio_init() and devm_gpiochip_add_data() operate on per "struct gpio_chip" bias, which mean they need to request three independent gpio chips.. > > foo-gpios <&gpio 2 7 GPIO_ACTIVE_LOW>; if we model the dts as above, then "&gpio" will register itself as one sole "struct gpio_chip", which mean one gpio chip combine three banks.. I've looked at the sunxi driver which Samuel pointed, imply same example as this. if taking "one gpio chip support multi banks" direction, then it will be reverted back as patch V1, then, even the three gpio-cells model is unnecessary needed, as we can map gpio number to the array in the underlying gpio driver the v4 patch is very similar to drivers/gpio/gpio-dwapb.c If had to choose the direction between v1 and v4, I personally would favor the latter, as from hw perspective, each gpio bank is quite indepedent - has its own io/irq registers, merely has interleaved io memory space, one shared IRQ line.. also the patch v4 leverage lots underlying generic gpio APIs, result in much simplified/clean code base.. > > > > for offset 7 on block 2 for example. > > > > We need a custom xlate function I suppose. > > > > It just has not been done that way before, everybody just did > > 2-cell GPIOs. > > does this approach work for you? I think it's the most diplomatic. > > I'm sorry about the hopeless back-and-forth with the bindings, also > for contributing to the messy debate. I do want developers to feel > encouraged to contribute and not get stuck in too long debates. > > Yours, > Linus Walleij -- Yixun Lan (dlan) Gentoo Linux Developer GPG Key ID AABEFD55 From mboxrd@z Thu Jan 1 00:00:00 1970 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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 4FDE4C02194 for ; Thu, 6 Feb 2025 13:56:17 +0000 (UTC) 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:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=z9Kok9uf9hFWYstR5HFiknCwvkq5DAYJRfdD7FPR4FI=; b=eYHSDLuix5UE8h 6AY7o5ZOug8JuHdxh/0Oxxf9yeVAtshMjGQbhLgmuQLF1k1rZ7dVDj08hMWUnB2ndatu2nwVrEQv4 bwxqG7i44I2CLLMg1QxFzdmF7FbEZXU0g+eon+pUo89lyZYLUKmImINDcYQrfrQSIYOoG7F6HzBLS gOaIms/od+bGJgcD1P0s+cWTjPp41f15kX0MU9+i8lZ/WCw/+lkJTD1Qd5j2ttm8kFtgjCcVBBB4L ZDXa8dP5ZJEh55OHsJon5rBT+kPsw0mxofMKJ7xdtg0p9ykuaNaNDUtr/Ga22M50sRCqzdaB+wANa B6Y4s9Ie707gwQl2p4LA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1tg2MV-00000006Uw9-2IDy; Thu, 06 Feb 2025 13:56:11 +0000 Received: from mail.gentoo.org ([2001:470:ea4a:1:5054:ff:fec7:86e4] helo=smtp.gentoo.org) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1tg1zB-00000006Riy-0Kos for linux-riscv@lists.infradead.org; Thu, 06 Feb 2025 13:32:06 +0000 Received: from localhost (unknown [180.172.76.141]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: dlan) by smtp.gentoo.org (Postfix) with ESMTPSA id E15F4342FF5; Thu, 06 Feb 2025 13:32:01 +0000 (UTC) Date: Thu, 6 Feb 2025 13:31:56 +0000 From: Yixun Lan To: Linus Walleij Subject: Re: [PATCH v4 1/4] dt-bindings: gpio: spacemit: add support for K1 SoC Message-ID: <20250206133156-GYA5687@gentoo> References: <20250121-03-k1-gpio-v4-0-4641c95c0194@gentoo.org> <20250121-03-k1-gpio-v4-1-4641c95c0194@gentoo.org> <20250123113042-GYA38135@gentoo> <20250127181726.GA538260-robh@kernel.org> <20250128031712-GYB47737@gentoo> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250206_053205_147321_71FB9715 X-CRM114-Status: GOOD ( 24.81 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rob Herring , Conor Dooley , Meng Zhang , linux-gpio@vger.kernel.org, Bartosz Golaszewski , linux-kernel@vger.kernel.org, Conor Dooley , Yangyu Chen , devicetree@vger.kernel.org, Palmer Dabbelt , Jesse Taube , Jisheng Zhang , Paul Walmsley , Olof Johansson , Inochi Amaoto , Krzysztof Kozlowski , linux-riscv@lists.infradead.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org SGkgTGludXMgYW5kIERUIG1haW50YWluZXJzOgoKT24gMTA6MTggVGh1IDA2IEZlYiAgICAgLCBM aW51cyBXYWxsZWlqIHdyb3RlOgo+IEhpIFlpeHVuLAo+IAo+IE9uIFR1ZSwgSmFuIDI4LCAyMDI1 IGF0IDU6MDPigK9QTSBMaW51cyBXYWxsZWlqIDxsaW51cy53YWxsZWlqQGxpbmFyby5vcmc+IHdy b3RlOgo+ID4gT24gVHVlLCBKYW4gMjgsIDIwMjUgYXQgNDoxN+KAr0FNIFlpeHVuIExhbiA8ZGxh bkBnZW50b28ub3JnPiB3cm90ZToKPiA+Cj4gPiA+IFtSb2JdCj4gPiA+ID4gSWYgTGludXggY2Fu J3QgaGFuZGxlIDEgbm9kZSBmb3IgTiBncGlvX2NoaXAncywgdGhlbiB0aGF0J3MgYSBMaW51eAo+ ID4gPiA+IHByb2JsZW0uIE1heWJlIGl0IGNhbiwgSURLLgo+ID4gPgo+ID4gPiBJIGhhdmVuJ3Qg c2VlbiBzb210aGluZyBsaWtlIHRoaXMgdG8gcmVnaXN0ZXIgMSBub2RlIGZvciBtdWx0aSBncGlv X2NoaXBzLi4KPiA+ID4gVG8gZ3Bpby9waW5jdHJsIG1haW50YWluZXIgKExpbnVzIFdhbGxlaWop LCBkbyB5b3UgaGF2ZSBzdWdnZXN0aW9uIG9uIHRoaXM/Cj4gPgo+ID4gRm9yIExpbnV4IHdlIGNh biBjYWxsIGJncGlvX2luaXQoKSB0aHJlZSB0aW1lcyBhbmQKPiA+IGRldm1fZ3Bpb2NoaXBfYWRk X2RhdGEoKSB0aHJlZSB0aW1lcyBvbiB0aGUgcmVzdWx0IGFuZCBpZiB3ZSB1c2UgdGhlCj4gPiBh cHByb2FjaCB3aXRoIHRocmVlIGNlbGxzICh3aGVyZSB0aGUgc2Vjb25kIGlzIGluc3RhbmNlIDAs MSwyIGFuZCB0aGUKPiA+IGxhc3Qgb25lIHRoZSBvZmZzZXQgMC4uMzEpIHRoZW4gaXQgd2lsbCB3 b3JrIGFsbCBqdXN0IHRoZSBzYW1lIEkgZ3Vlc3M/Cj4gPgpib3RoIGJncGlvX2luaXQoKSBhbmQg ZGV2bV9ncGlvY2hpcF9hZGRfZGF0YSgpIG9wZXJhdGUgb24gcGVyICJzdHJ1Y3QgZ3Bpb19jaGlw IiBiaWFzLAp3aGljaCBtZWFuIHRoZXkgbmVlZCB0byByZXF1ZXN0IHRocmVlIGluZGVwZW5kZW50 IGdwaW8gY2hpcHMuLgoKPiA+IGZvby1ncGlvcyA8JmdwaW8gMiA3IEdQSU9fQUNUSVZFX0xPVz47 CmlmIHdlIG1vZGVsIHRoZSBkdHMgYXMgYWJvdmUsIHRoZW4gIiZncGlvIiB3aWxsIHJlZ2lzdGVy IGl0c2VsZiBhcyBvbmUgc29sZSAic3RydWN0IGdwaW9fY2hpcCIsCiB3aGljaCBtZWFuIG9uZSBn cGlvIGNoaXAgY29tYmluZSB0aHJlZSBiYW5rcy4uIEkndmUgbG9va2VkIGF0IHRoZSBzdW54aSBk cml2ZXIgd2hpY2gKU2FtdWVsIHBvaW50ZWQsIGltcGx5IHNhbWUgZXhhbXBsZSBhcyB0aGlzLgoK aWYgdGFraW5nICJvbmUgZ3BpbyBjaGlwIHN1cHBvcnQgbXVsdGkgYmFua3MiIGRpcmVjdGlvbiwg dGhlbiBpdCB3aWxsIGJlIHJldmVydGVkIGJhY2sgYXMgcGF0Y2ggVjEsCnRoZW4sIGV2ZW4gdGhl IHRocmVlIGdwaW8tY2VsbHMgbW9kZWwgaXMgdW5uZWNlc3NhcnkgbmVlZGVkLCBhcyB3ZSBjYW4g bWFwIGdwaW8gbnVtYmVyCiB0byB0aGUgPGJhbmssIG9mZnNldD4gYXJyYXkgaW4gdGhlIHVuZGVy bHlpbmcgZ3BpbyBkcml2ZXIKCnRoZSB2NCBwYXRjaCBpcyB2ZXJ5IHNpbWlsYXIgdG8gZHJpdmVy cy9ncGlvL2dwaW8tZHdhcGIuYwoKSWYgaGFkIHRvIGNob29zZSB0aGUgZGlyZWN0aW9uIGJldHdl ZW4gdjEgYW5kIHY0LCBJIHBlcnNvbmFsbHkgd291bGQgZmF2b3IgdGhlIGxhdHRlciwKIGFzIGZy b20gaHcgcGVyc3BlY3RpdmUsIGVhY2ggZ3BpbyBiYW5rIGlzIHF1aXRlIGluZGVwZWRlbnQgLSBo YXMgaXRzIG93biBpby9pcnEgcmVnaXN0ZXJzLAogbWVyZWx5IGhhcyBpbnRlcmxlYXZlZCBpbyBt ZW1vcnkgc3BhY2UsIG9uZSBzaGFyZWQgSVJRIGxpbmUuLiBhbHNvIHRoZSBwYXRjaCB2NCBsZXZl cmFnZQogbG90cyB1bmRlcmx5aW5nIGdlbmVyaWMgZ3BpbyBBUElzLCByZXN1bHQgaW4gbXVjaCBz aW1wbGlmaWVkL2NsZWFuIGNvZGUgYmFzZS4uCgo+ID4KPiA+IGZvciBvZmZzZXQgNyBvbiBibG9j ayAyIGZvciBleGFtcGxlLgo+ID4KPiA+IFdlIG5lZWQgYSBjdXN0b20geGxhdGUgZnVuY3Rpb24g SSBzdXBwb3NlLgo+ID4KPiA+IEl0IGp1c3QgaGFzIG5vdCBiZWVuIGRvbmUgdGhhdCB3YXkgYmVm b3JlLCBldmVyeWJvZHkganVzdCBkaWQKPiA+IDItY2VsbCBHUElPcy4KPiAKPiBkb2VzIHRoaXMg YXBwcm9hY2ggd29yayBmb3IgeW91PyBJIHRoaW5rIGl0J3MgdGhlIG1vc3QgZGlwbG9tYXRpYy4K PiAKPiBJJ20gc29ycnkgYWJvdXQgdGhlIGhvcGVsZXNzIGJhY2stYW5kLWZvcnRoIHdpdGggdGhl IGJpbmRpbmdzLCBhbHNvCj4gZm9yIGNvbnRyaWJ1dGluZyB0byB0aGUgbWVzc3kgZGViYXRlLiBJ IGRvIHdhbnQgZGV2ZWxvcGVycyB0byBmZWVsCj4gZW5jb3VyYWdlZCB0byBjb250cmlidXRlIGFu ZCBub3QgZ2V0IHN0dWNrIGluIHRvbyBsb25nIGRlYmF0ZXMuCj4gCj4gWW91cnMsCj4gTGludXMg V2FsbGVpagoKLS0gCllpeHVuIExhbiAoZGxhbikKR2VudG9vIExpbnV4IERldmVsb3BlcgpHUEcg S2V5IElEIEFBQkVGRDU1CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpsaW51eC1yaXNjdiBtYWlsaW5nIGxpc3QKbGludXgtcmlzY3ZAbGlzdHMuaW5mcmFk ZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LXJpc2N2Cg==