From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out-170.mta1.migadu.com (out-170.mta1.migadu.com [95.215.58.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5D31E153512; Mon, 6 May 2024 14:45:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=95.215.58.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715006744; cv=none; b=U1cX3JwPRDNIbIyin5XrvgHh0YQN4s4NCaDC56LHPkNam86UQQBmxI2FpE5oLKBivC1ujYheRrcejeb0FZkSsCm3Pc09zr3LssaoQ9Vd+Yo5gGVPwbRfD1FioNlbZ9cfZiHynCiFKzpzhLNai3Tjl+00ucK1xSnuZlYsrWBNUEM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715006744; c=relaxed/simple; bh=dJL/4nHHVyMfHE+r7aDaey7YICu0AfSLuHlHOggg1NE=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=lK8GZ+pVXool7CbLWPLBXZJ0FTlQW+ldb05h3W9fG7BMDrVqSkAHtRJGcudv4dfms70n/IPBfEYIiYpM8Fd0G456tMPRF4Y13crBwr0R8oIt7dcVoWgznmnyqa5fhw+ZqO4uyOTINI8oXKpMa1drHTDDzMNwLRKZbBItez1OTGg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=dyziNFu8; arc=none smtp.client-ip=95.215.58.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="dyziNFu8" Message-ID: <06a4e5fd-3d26-4923-bcbf-0bdd66d756c4@linux.dev> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1715006740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=q1l323OlqVNgQvRZA1TNt3bEY9wTCe6PZHzYFIfTBD0=; b=dyziNFu8TkwgQEy4S0xRtrXuNqEYqSFRrjS+7rGhRf/v9t6FWbK6M7pIb7Rw9nhyKWSrJG c8xWbXHnPIp5R9H3ITKJya/V8Hn2tWRFTfZWVke3UdG1jOrACTHcMw0X9B2Qbk4PtYeMcG tugkIs1s5xSX+VApT7+HaUWY327fj4Q= Date: Mon, 6 May 2024 10:45:30 -0400 Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Subject: Re: [PATCH 0/2] pinctrl: zynqmp: Support muxing individual pins To: Linus Walleij Cc: Michal Simek , linux-gpio@vger.kernel.org, Krishna Potthuri , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Conor Dooley , Krzysztof Kozlowski , Rob Herring , devicetree@vger.kernel.org References: <20240503162217.1999467-1-sean.anderson@linux.dev> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Sean Anderson In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT On 5/6/24 02:43, Linus Walleij wrote: > On Fri, May 3, 2024 at 6:22 PM Sean Anderson wrote: > >> This series adds support for muxing individual pins, instead of >> requiring groups to be muxed together. See [1] for additional >> discussion. >> >> [1] https://lore.kernel.org/linux-arm-kernel/5bb0dc7e-4c89-4f3d-abc6-41ae9ded5ae9@linux.dev/ > > The way I usually would recommend to solve this would be to > define new subgroups, so e.g. for a UARTS: > > uart0_grp = pin_rx, pin_tx, pin_cts, pin_dts, pin_dcd; > > And today this would be used like that: > > mux0: > function = "uart0"; > groups = "uart0_grp"; > > Then we realize that not everyone need all the modem > control signals provided. What to do. Well this: > > uart0_rxtx_grp = pin_rx, pin_tx: > uart0_modem_grp = pin_cts, pin_dts, pin_dcd; > > mux0: > function = "uart0"; > groups = "uart0_rxtx_grp"; > > Now the CTS, DTS, DCD pins can be reused for something > else such as GPIO. > > I *know* that this breaks ABI: the driver group definitions change > and the device tree needs to be changed too. > > This only matters if the users have a habit of distributing the > kernel and DTB separately so a new kernel needs to support > and old DTB. This varies in how much control we have but I > think for Xilinx systems the kernel and DTB are always updated > in lockstep, so it really does not matter? Well, the pin groups are actually defined in the PMU firmware. And frankly, I don't see the point of pin "groups" when there are not actual pin groups at the hardware level. The pins can all be muxed individually, so there's no point in adding artificial groups on top. Just mux the pins like the hardware allows and everything is easy. Cuts down on the absurd number of strings too. --Sean 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 E1C40C10F16 for ; Mon, 6 May 2024 14:46:08 +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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=ROoQ87TYqYB5KEfiSFixYWQie0+YZUv91tlZUKrBL8k=; b=ElsTFtek9eAu9Z nLz0nZcOCd2krAeKbp7X6bypArFaHdP74OBCfeTQrCrwb+q3PVKUAxGw6KDCKk0ZTt0vxtGb3JHGn 0NIK0t5cxJ1pMf/KiR7pBXkO7MgzaK11EUP+gt0Ia3XGap1hhnTT52UdGjMw2I+H7vYyiOZcwGLC/ ARLDpUKthWTEmT8wRyqLaU/ZWpo+qe/pDvhKRmy22qukl24H7/MhcPH1YebVmel9xuJtkQnUDX9Bk 9lJhahDohtr7+vhZggq26R9ly/GVo8kBjE2dXMq6sMSC5ML/IlmBxWkIcHwYqJmZO7tPISTEoUzzJ mwtBrpurUoxmKy5uuWcg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s3zbI-00000007izU-0TEP; Mon, 06 May 2024 14:45:56 +0000 Received: from out-176.mta1.migadu.com ([2001:41d0:203:375::b0]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s3zbE-00000007irv-2ebf for linux-arm-kernel@lists.infradead.org; Mon, 06 May 2024 14:45:54 +0000 Message-ID: <06a4e5fd-3d26-4923-bcbf-0bdd66d756c4@linux.dev> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1715006740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=q1l323OlqVNgQvRZA1TNt3bEY9wTCe6PZHzYFIfTBD0=; b=dyziNFu8TkwgQEy4S0xRtrXuNqEYqSFRrjS+7rGhRf/v9t6FWbK6M7pIb7Rw9nhyKWSrJG c8xWbXHnPIp5R9H3ITKJya/V8Hn2tWRFTfZWVke3UdG1jOrACTHcMw0X9B2Qbk4PtYeMcG tugkIs1s5xSX+VApT7+HaUWY327fj4Q= Date: Mon, 6 May 2024 10:45:30 -0400 MIME-Version: 1.0 Subject: Re: [PATCH 0/2] pinctrl: zynqmp: Support muxing individual pins To: Linus Walleij Cc: Michal Simek , linux-gpio@vger.kernel.org, Krishna Potthuri , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Conor Dooley , Krzysztof Kozlowski , Rob Herring , devicetree@vger.kernel.org References: <20240503162217.1999467-1-sean.anderson@linux.dev> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Sean Anderson In-Reply-To: X-Migadu-Flow: FLOW_OUT X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240506_074552_903930_02818812 X-CRM114-Status: GOOD ( 21.80 ) 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: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gNS82LzI0IDAyOjQzLCBMaW51cyBXYWxsZWlqIHdyb3RlOgo+IE9uIEZyaSwgTWF5IDMsIDIw MjQgYXQgNjoyMuKAr1BNIFNlYW4gQW5kZXJzb24gPHNlYW4uYW5kZXJzb25AbGludXguZGV2PiB3 cm90ZToKPiAKPj4gVGhpcyBzZXJpZXMgYWRkcyBzdXBwb3J0IGZvciBtdXhpbmcgaW5kaXZpZHVh bCBwaW5zLCBpbnN0ZWFkIG9mCj4+IHJlcXVpcmluZyBncm91cHMgdG8gYmUgbXV4ZWQgdG9nZXRo ZXIuIFNlZSBbMV0gZm9yIGFkZGl0aW9uYWwKPj4gZGlzY3Vzc2lvbi4KPj4KPj4gWzFdIGh0dHBz Oi8vbG9yZS5rZXJuZWwub3JnL2xpbnV4LWFybS1rZXJuZWwvNWJiMGRjN2UtNGM4OS00ZjNkLWFi YzYtNDFhZTlkZWQ1YWU5QGxpbnV4LmRldi8KPiAKPiBUaGUgd2F5IEkgdXN1YWxseSB3b3VsZCBy ZWNvbW1lbmQgdG8gc29sdmUgdGhpcyB3b3VsZCBiZSB0bwo+IGRlZmluZSBuZXcgc3ViZ3JvdXBz LCBzbyBlLmcuIGZvciBhIFVBUlRTOgo+IAo+IHVhcnQwX2dycCA9IHBpbl9yeCwgcGluX3R4LCBw aW5fY3RzLCBwaW5fZHRzLCBwaW5fZGNkOwo+IAo+IEFuZCB0b2RheSB0aGlzIHdvdWxkIGJlIHVz ZWQgbGlrZSB0aGF0Ogo+IAo+IG11eDA6Cj4gICAgIGZ1bmN0aW9uID0gInVhcnQwIjsKPiAgICAg Z3JvdXBzID0gInVhcnQwX2dycCI7Cj4gCj4gVGhlbiB3ZSByZWFsaXplIHRoYXQgbm90IGV2ZXJ5 b25lIG5lZWQgYWxsIHRoZSBtb2RlbQo+IGNvbnRyb2wgc2lnbmFscyBwcm92aWRlZC4gV2hhdCB0 byBkby4gV2VsbCB0aGlzOgo+IAo+IHVhcnQwX3J4dHhfZ3JwID0gcGluX3J4LCBwaW5fdHg6Cj4g dWFydDBfbW9kZW1fZ3JwID0gcGluX2N0cywgcGluX2R0cywgcGluX2RjZDsKPiAKPiBtdXgwOgo+ ICAgICBmdW5jdGlvbiA9ICJ1YXJ0MCI7Cj4gICAgIGdyb3VwcyA9ICJ1YXJ0MF9yeHR4X2dycCI7 Cj4gCj4gTm93IHRoZSBDVFMsIERUUywgRENEIHBpbnMgY2FuIGJlIHJldXNlZCBmb3Igc29tZXRo aW5nCj4gZWxzZSBzdWNoIGFzIEdQSU8uCj4gCj4gSSAqa25vdyogdGhhdCB0aGlzIGJyZWFrcyBB Qkk6IHRoZSBkcml2ZXIgZ3JvdXAgZGVmaW5pdGlvbnMgY2hhbmdlCj4gYW5kIHRoZSBkZXZpY2Ug dHJlZSBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvby4KPiAKPiBUaGlzIG9ubHkgbWF0dGVycyBpZiB0 aGUgdXNlcnMgaGF2ZSBhIGhhYml0IG9mIGRpc3RyaWJ1dGluZyB0aGUKPiBrZXJuZWwgYW5kIERU QiBzZXBhcmF0ZWx5IHNvIGEgbmV3IGtlcm5lbCBuZWVkcyB0byBzdXBwb3J0Cj4gYW5kIG9sZCBE VEIuIFRoaXMgdmFyaWVzIGluIGhvdyBtdWNoIGNvbnRyb2wgd2UgaGF2ZSBidXQgSQo+IHRoaW5r IGZvciBYaWxpbnggc3lzdGVtcyB0aGUga2VybmVsIGFuZCBEVEIgYXJlIGFsd2F5cyB1cGRhdGVk Cj4gaW4gbG9ja3N0ZXAsIHNvIGl0IHJlYWxseSBkb2VzIG5vdCBtYXR0ZXI/CgpXZWxsLCB0aGUg cGluIGdyb3VwcyBhcmUgYWN0dWFsbHkgZGVmaW5lZCBpbiB0aGUgUE1VIGZpcm13YXJlLiBBbmQK ZnJhbmtseSwgSSBkb24ndCBzZWUgdGhlIHBvaW50IG9mIHBpbiAiZ3JvdXBzIiB3aGVuIHRoZXJl IGFyZSBub3QgYWN0dWFsCnBpbiBncm91cHMgYXQgdGhlIGhhcmR3YXJlIGxldmVsLiBUaGUgcGlu cyBjYW4gYWxsIGJlIG11eGVkCmluZGl2aWR1YWxseSwgc28gdGhlcmUncyBubyBwb2ludCBpbiBh ZGRpbmcgYXJ0aWZpY2lhbCBncm91cHMgb24gdG9wLgpKdXN0IG11eCB0aGUgcGlucyBsaWtlIHRo ZSBoYXJkd2FyZSBhbGxvd3MgYW5kIGV2ZXJ5dGhpbmcgaXMgZWFzeS4gQ3V0cwpkb3duIG9uIHRo ZSBhYnN1cmQgbnVtYmVyIG9mIHN0cmluZ3MgdG9vLgoKLS1TZWFuCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcg bGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmlu ZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==