Received: by 2002:a89:d88:0:b0:1fa:5c73:8e2d with SMTP id eb8csp2044364lqb; Mon, 27 May 2024 06:15:56 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCX7urDnrkk66WkMTrsA9X6HaQAPZBUuxkNFutWAQ2rwBvQboI982MdOQlNir091pCs9NcbOSSySUbeuYbkJ6SMMOjVWbXguo7QqT5FNwg== X-Google-Smtp-Source: AGHT+IHZut9/UPMw7bxR1Vk8jZI2oTut8uM35imm0bqKkXBg2+/TqUjpx4ytRQ6kmKmEe3m+TVhK X-Received: by 2002:a05:6512:1051:b0:529:a66e:5b52 with SMTP id 2adb3069b0e04-529a66e5bd3mr7801500e87.46.1716815756473; Mon, 27 May 2024 06:15:56 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1716815756; cv=pass; d=google.com; s=arc-20160816; b=nHNdI0c8g3Xa6PnENp+lkaChn8bWk7nKJMgETj0kWrQmeBM9kebCFsjvOMv4jmQpNk pjn7L3LUKMzKLZihAF4Lp+qQY5NDnd2VTvXWUKvR/10akKPUZbnZS9p3lScaIwPXi69v 4vWBdmjecoDLfWQXh6Ozo9zR3x/2YwT5UK2PYMrH4h/oHcwuqtT/syi5Q1pK4Wnn2dqf kWT5W1F4Iy87E9r3cMsfkVMH9E+4IbQPHe+kCVqdxaH3vGUEAm4kusqHCPogQZ7U5hLA nGI/FCVjL4qqMQ5qIJ6pG79ucj8tdOlVqGqTHuq9GEMwAhrA0ALEh692s1fzyfTpe75C IBFw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:list-unsubscribe:list-subscribe :list-id:precedence:dkim-signature; bh=ORWWAV5DFVa1AMsT2HoJ2yL9cgtTVCQWr4c970t4N2A=; fh=h6JC0KmavkWGWCe/fU6+VvTchsQuhwXC+E5BChL5TCg=; b=RwGQMbhl68XLlguf/+6NWAWizQxfUuMx2tNMdbxgaObGDZTEI5jopelerrHecDMx9D /H+x3QHvUFJWte6HLFsizXxI0EWhzJv2xXAXDWavyrH9lCXi/okpZaLhsT3yIGqQdA/V RkZrmcPejJqTWbb4QEiuqkR+zJ16c149IZ6Y3d6nlHTYlwAnlrk0FEHEZf6L3PoOBNlZ W0eemlM/JToKJHqa7JDBmEkLW6Dkmy0hwI2OPYxrOVpHCBkcapG+embRlKazU85KLCqW YKzTcH30GnZwYpa9JUQMVk8sSnRvGcHFvnVCmL+YY1CjvFJOBkiO3fUiy3ZWI/880LFN /Bjw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SyHO7WSO; arc=pass (i=1 spf=pass spfdomain=linaro.org dkim=pass dkdomain=linaro.org dmarc=pass fromdomain=linaro.org); spf=pass (google.com: domain of linux-kernel+bounces-190662-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-190662-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id 4fb4d7f45d1cf-5797b7ccd13si2437543a12.92.2024.05.27.06.15.56 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 May 2024 06:15:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-190662-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SyHO7WSO; arc=pass (i=1 spf=pass spfdomain=linaro.org dkim=pass dkdomain=linaro.org dmarc=pass fromdomain=linaro.org); spf=pass (google.com: domain of linux-kernel+bounces-190662-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-190662-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 36A5A1F24669 for ; Mon, 27 May 2024 13:15:56 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D0F8E15ECD4; Mon, 27 May 2024 13:15:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="SyHO7WSO" Received: from mail-yw1-f172.google.com (mail-yw1-f172.google.com [209.85.128.172]) (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 872D115DBC1 for ; Mon, 27 May 2024 13:15:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716815733; cv=none; b=cqMXjB8bffYs1s5nXKnMiqXkQNCC5/UsyCPhqHhI3KEdGcPu2Hq3xSkJd/7PSCn+cm0p0kKCq1e86PGRoLbCOS7zyYxQSivFYFC8AI/uDoJkZM9f4/7BH/NXBZIcMHxF1eDHn3wuRCo8PeCArAKkL+/Zdo+xfShWa/MHaZENZWM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716815733; c=relaxed/simple; bh=K247tM0uRG0BEBi0QtYli0dAiX2cPA2+pN50KQ+XwJ8=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=Ta/dJPMNfdKLcSx0W6w5Sq8K1Iu3OZk7Ry+7vWj5zrJRVBINaAa9/QV3OVyr7YoOLihshf9ddNitW1GCP5zy8TDeg7ZE7qTAc7XfhVx+qlEAQA2g+wIiLMClDacig+HSVwf+pOPl272PVNRxufl1JTOkVg57CMp0W36d/muU5r4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=SyHO7WSO; arc=none smtp.client-ip=209.85.128.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Received: by mail-yw1-f172.google.com with SMTP id 00721157ae682-62a145e0bb2so25701287b3.0 for ; Mon, 27 May 2024 06:15:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1716815730; x=1717420530; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ORWWAV5DFVa1AMsT2HoJ2yL9cgtTVCQWr4c970t4N2A=; b=SyHO7WSObKi/9vVbWpFY6Iyi/jPD3vlvvL2Qk6liuyQAxH2aO220Y1WYbahv1/dan6 09NGErKxptysMMj+46h15XI65RhX+UsWq2UIEL4waYEsdm599mD/XZCbSGMjGtg6RxPz h9eI5jS6jDdR6uMZUITLr5j96bji46XXFOwEIB2XweALj095/cSqImxFmxPSi7iiweNX fOm+Tyz2NksN5ul5WLE6EgdFGXbbaQok5YCvUnOtaHHO+L+n6w0F175mAFyYpHJt3ZwC 57APHQ7Sq7sbOEj5Y8mLhpBED+N3a8WPC+OQrDaMW1HfMUMvqxB6E1q/e7F1n77SPB2b hlhw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716815730; x=1717420530; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ORWWAV5DFVa1AMsT2HoJ2yL9cgtTVCQWr4c970t4N2A=; b=rQIuJheKJnZc7FfWdI6AJtTl8XomJ0Q0WX89Znkrmi1Yyx+4IzW9CDYE9QBww2JH6J 2Y0dhf5sb31FWDVGhWJmtuAKc6ixL3FbS3DzCEGz6eilYQQn1AssBj7BmtothXarvxR7 jPjvrYsuhz7bQEOFePqfiPqRR1H5/SeemJrDCop+cUvHm+5UCJbq89h+qL29ma4s7sFI z/AbD80aoQxN9Qs3WAVlt3HmZaUSJah/vWS9pXweMvQN9kcw6jTnQ6NEOCoEHD0PnN1/ 9kSR20/PX56yOQnmBxZKtdo6qKt1iG0SzY1Crt6nTsrTfM0C7DE8EDvtbUDmI5RCMyti MONw== X-Forwarded-Encrypted: i=1; AJvYcCWnXJmnuuZNhoiqF4bdGhYWZGv/qba0rkwqRrs5C9ucX4VIRF8cq5uNdI7nvAP1dj1Hl/a830xXYMCsLONleFaesRArxW5kHicMhzBY X-Gm-Message-State: AOJu0YzjfkkG1dg5vxKoP01KmeWN19cd1WANi3eIaZahKWjCn+ACQQWM ych6DCKhmAWP9HaaUHiKBD6gvWCJTDoZzsHaxooEwH4tl0flmZEsn06oKEB1JpjuLEgOlASLiha jDSE/gFU1q6gbvyNGSKfu1d3iyjFVVLRVy/IMQg== X-Received: by 2002:a25:bc0a:0:b0:df4:ece5:2712 with SMTP id 3f1490d57ef6-df7721c416bmr9545693276.39.1716815730399; Mon, 27 May 2024 06:15:30 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20240503162217.1999467-1-sean.anderson@linux.dev> <06a4e5fd-3d26-4923-bcbf-0bdd66d756c4@linux.dev> In-Reply-To: <06a4e5fd-3d26-4923-bcbf-0bdd66d756c4@linux.dev> From: Linus Walleij Date: Mon, 27 May 2024 15:15:19 +0200 Message-ID: Subject: Re: [PATCH 0/2] pinctrl: zynqmp: Support muxing individual pins To: Sean Anderson 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 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, May 6, 2024 at 4:45=E2=80=AFPM Sean Anderson wrote: > > Then we realize that not everyone need all the modem > > control signals provided. What to do. Well this: > > > > uart0_rxtx_grp =3D pin_rx, pin_tx: > > uart0_modem_grp =3D pin_cts, pin_dts, pin_dcd; > > > > mux0: > > function =3D "uart0"; > > groups =3D "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. Actually I didn't think that over, it is possible to add new groups and retain the old ones. I.e. retain uart0_grp, but additionally add and use uart0_rxtx and uart0_modem_grp and use one or the other approach. > Well, the pin groups are actually defined in the PMU firmware. Is that firmware written in such an helpful way that the groups can be extracted from the firmware then, as with SCMI? Or is it a matter of duplicating the info from the PMU in the software-defined groups. > 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. So are you going to switch all of Xilinx devicetrees over to using exclusiv= ely the new method (muxing individual pins)? I'm fine with one (string identified groups) which I encourage, but I let individual pin control pass as well on several occasions. What I don't want to see is a Franken-solution that mixes the two approaches, even less so on the same system. Someone is going to have to maintain the resulting mess. And this looks like exactly that. If you want to mux individual pins instead of groups and functions, by all means, but please do not mix the two approaches in the same driver, I'm just trying to save Xilinx from themselves here. Yours, Linus Walleij