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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A44D3C4332F for ; Wed, 19 Oct 2022 11:06:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231511AbiJSLGP (ORCPT ); Wed, 19 Oct 2022 07:06:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54044 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233375AbiJSLFY (ORCPT ); Wed, 19 Oct 2022 07:05:24 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EEAC51A20D; Wed, 19 Oct 2022 03:34:42 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7643961800; Wed, 19 Oct 2022 09:34:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C98CDC433D7; Wed, 19 Oct 2022 09:34:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1666172044; bh=+XJ4KA8dllr0ByMjgUh1Y3S/fQ8SIHjq3TDCIyLLrNo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=T7Uch+ZhgMxzh633BHSOdQxgxOqQowc35/YWFAWeeU2s0E+SioG0sAWiRyAQRnsGN 0mXBcQtpiF2kOYrwuWgc4SJnQZsDBoFGsW8JvtPwpY6O8uiibCtq3L726zsubk+UWG 8j9rsryp/cG7gZydanqhizZLgUtQQ5H0t7mYjnPlKn62L/KB5r3+p3esvvbTejHnNz 8oH+xKXDWfh0w5qUuu+S9D7Z7ggNqLH+rGfZpwZXQjZ03Ssa2uO/EhPzBD2hPHkSF2 uX0uoTZbcVItVSQjtyPhNnndaLD6L9gEP95UYVf3GiCDPHFzNRKGwjsnOw0aNaVVXs pYOkC+u9eiivA== Received: from johan by xi.lan with local (Exim 4.94.2) (envelope-from ) id 1ol5SS-0005JG-2I; Wed, 19 Oct 2022 11:33:52 +0200 Date: Wed, 19 Oct 2022 11:33:52 +0200 From: Johan Hovold To: Krzysztof Kozlowski Cc: Dmitry Baryshkov , Johan Hovold , Vinod Koul , Andy Gross , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 09/15] dt-bindings: phy: qcom,qmp-pcie: mark current bindings as legacy Message-ID: References: <20221017145328.22090-1-johan+linaro@kernel.org> <20221017145328.22090-10-johan+linaro@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Oct 18, 2022 at 12:44:22PM -0400, Krzysztof Kozlowski wrote: > On 18/10/2022 12:04, Johan Hovold wrote: > > The question is whether to convert also the current bindings and DTS to > > the new (sc8280xp) scheme (e.g. drop the child nodes and register > > subregions). > > > > The driver can support both binding schemes using the same compatible > > strings for a transition period (or in theory forever) by checking for > > the existence of a child node. > > > > Converting the DTS to use the new bindings would obviously prevent using > > them with an old kernel (i.e. 2 above), but I don't think that's a > > problem (unlike backward compatibility during at least a transition > > period). > > It is still not nice towards any other users of DTS, because this will > break all of them. I agree this won't be ABI type of break. It is > discouraged though, unless there are clear benefits from this or one > totally does not care about other DTS users... > > As I said it is up to platform maintainer. Yeah. When time I spoke to Bjorn about this, we agreed to draw the line at SC8280XP. But if it turns out converting older platforms is needed to fix bugs or add features (e.g. due to the incomplete register descriptions), we may later have to reconsider this. > > My concern was how to describe the deprecation in DT schema if we were > > convert them. By instead just keeping the old bindings as-is in a > > separate file and continuing to support them in the driver we can have a > > nice and clean description of the new bindings (sc8280xp) without the > > legacy cruft. > > You cannot have one compatible in two schemas, so for old bindings (and > DTS): > 1. Don't convert them, > 2. Convert with keeping old properties - as you pointed this might be > full of conditionals/allOf, so difficult to maintain and read, > 3. Convert dropping old stuff. > > For the option 3. for sure Rob will ask why. :) Thanks for confirming. So I guess we start with keeping the old bindings as they are (1) and if later needed (or desired) we should simply drop the old bindings (3) from the schema (we can still have the driver support the old bindings during a transition period). > > If we were to start introducing conditionals on existence of child > > nodes, and marking the old bindings as deprecated in one large schema, > > then that sounds like it would be very messy and hard to read and > > maintain. But perhaps there is some way to do this without such > > downsides that I'm not aware of. Johan