Received: by 2002:a05:7412:b995:b0:f9:9502:5bb8 with SMTP id it21csp964182rdb; Fri, 22 Dec 2023 10:01:29 -0800 (PST) X-Google-Smtp-Source: AGHT+IGgu9pLFYHTcPsdUHik1CIHEoKQdUPufb01GcVdxXXScS5CSlPj6UUa2dPF8G6Dhiz4jP1s X-Received: by 2002:a05:6a20:4b20:b0:194:ee15:4b68 with SMTP id fp32-20020a056a204b2000b00194ee154b68mr1183188pzb.43.1703268089357; Fri, 22 Dec 2023 10:01:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703268089; cv=none; d=google.com; s=arc-20160816; b=OdTP0JOGvwWzvFEqEqoR0UhZOw3QjFFIaz4JPHJMGvAZWXB5HqD4H38ej0ma72S75e my60u9zr/e7xnqwYr5vpOBnvdLFBlxkvFFisWHTzE1RhWw+STfQT9ivPsryA7z/4o7tr KNA+Mj1tjoAibMV/ycf0thdG7f2yzrUg0In47Jd/xLHh5Ms/c670NVq98PgnEmvwV0zk Gsn0uodHX+fS8rWR150We2JjaFkn8mjSdnUZBG+gN8gA3uVK53IobMwInMx0I8TW5pbn wjQv+wZhy6c2N4DNEQgutO6WvBTi87PiWVefIYVaITEZfpAa91ANPdQqm9Rv53ibpjX9 uUzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date; bh=sYkP5x/5nT2fLdECcYXMCLfJ5vXXsIkve0rZ7gJAGQs=; fh=jBW8KDWSI25Hlsqh5xq/VCu7Qfr59m5k4B6O38VhCD0=; b=fYPTsDkEIjP6COFtK9fBOZ9o6z8z4UhkUgyma+SWfMCsJIjzcexnbYc8qkQ86XZwYL w0s0A3/9mACH51Gd6sqb0bhENxr/Zaumt32WvxwOWLFrJV8sQc8cuDI4AkzP9RIb6ywU 2Ch4EHqXpYjys7hkDZkBI0d9U0IoyK1E+bNIe/Z+SSbUnHIfD0RlNe0KAha5ZV3lzmd8 A+pQrh1yZklAw1qGzashVonQmBdtfKeYCgRzvBq8rg2j1+/kifkvMIG91bLKs/ZBe6vT 6C+89lWq171qTbgKCRdJy0+KEqy0etuwS+OTww8zvpNviKoy6oBUXufDK7x1GjvrCH4p 6pHg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel+bounces-9979-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-9979-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id x8-20020aa793a8000000b006d693cb47a2si3576750pff.341.2023.12.22.10.01.29 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Dec 2023 10:01:29 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-9979-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel+bounces-9979-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-9979-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com 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 sv.mirrors.kernel.org (Postfix) with ESMTPS id 6BB04288FB2 for ; Fri, 22 Dec 2023 17:50:05 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 3DF0C2C19C; Fri, 22 Dec 2023 17:44:04 +0000 (UTC) X-Original-To: linux-kernel@vger.kernel.org Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 084FE2C188; Fri, 22 Dec 2023 17:44:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 772B92F4; Fri, 22 Dec 2023 09:44:45 -0800 (PST) Received: from pluto (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id A76543F738; Fri, 22 Dec 2023 09:43:56 -0800 (PST) Date: Fri, 22 Dec 2023 17:43:53 +0000 From: Cristian Marussi To: "Peng Fan (OSS)" Cc: Sudeep Holla , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Oleksii Moisieiev , Linus Walleij , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-gpio@vger.kernel.org, Peng Fan Subject: Re: [PATCH 7/7] pinctrl: scmi: implement pinctrl_scmi_imx_dt_node_to_map Message-ID: References: <20231215-pinctrl-scmi-v1-0-0fe35e4611f7@nxp.com> <20231215-pinctrl-scmi-v1-7-0fe35e4611f7@nxp.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231215-pinctrl-scmi-v1-7-0fe35e4611f7@nxp.com> On Fri, Dec 15, 2023 at 07:56:35PM +0800, Peng Fan (OSS) wrote: > From: Peng Fan > > i.MX95 System Manager FW supports SCMI PINCTRL protocol, but uses > OEM Pin Configuration type, so need i.MX specific dt_node_to_map. > This does not even compile for me, as of now, when configuring the Pinctrl SCMI driver as a module with your IMX custom additions. (I think the Makefile with the additional pinctrl-imx is wrong in how describes the objects composing the pinctrl-scmi module with IMX addons...) ERROR: modpost: "pinctrl_scmi_imx_dt_node_to_map" [drivers/pinctrl/pinctrl-scmi.ko] undefined! make[3]: *** [dev/src/linux/scripts/Makefile.modpost:145: Module.symvers] Error 1 make[2]: *** [dev/src/linux/Makefile:1863: modpost] Error 2 make[1]: *** [dev/src/linux/Makefile:234: __sub-make] Error 2 make[1]: Leaving directory dev/out_linux make: *** [Makefile:234: __sub-make] Error 2 More in general, I think that this NXP OEM specific additions, which are in general welcome (and indeed as you know part of the spec was modified to allow for OEM specific needs), do NOT belong to this generic SCMI Pinctrl driver, because the driver from Oleksii/EPAM was born as a generic SCMI driver and it fits perfectly with the Generic Pinctrl Linux subsystem and related generic bindings parsing: now with this you are trying to stick a custom OEM slight varied behaviour (and related binding) on top of a generic thing. And this choice leads to a number of additional changes in the SCMI core to support an even more complex handling of SCMI devices, which is already too complex IMO.. IOW...I dont think that the whole idea of the per-protocol optional compatible to be able to select slightly different behaviours/parsing would have a great chance to fly sincerely... I know there is an issue with having a completely distinct SCMI IMX pinctrl driver that uses the same protocol node @19 (without the need for the compatible trick) due to the way in which the Pinctrl subsystem searches for devices (by of_node)...I'll think about an alternative way to allow this but I am not sure (as you saw) that would be so easily doable... Also, I am wondering if this is really a problem in reality since I would NOT expect you to load/ship both the OEM/NXP custom specific SCMI pinctrl driver AND the generic one on the same platform (after having made them distinct I mean...) am I wrong ? (so you could even made them exclude each other at compile time...far from being the best option I agree...) Thanks, Cristian