From: Johan Hovold <johan@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Cc: Johan Hovold <johan+linaro@kernel.org>,
Vinod Koul <vkoul@kernel.org>, Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konrad.dybcio@linaro.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 02/14] dt-bindings: phy: qcom,qmp-usb3-dp: fix sc8280xp bindings
Date: Mon, 14 Nov 2022 18:08:18 +0100 [thread overview]
Message-ID: <Y3J2AjjjsybI9mKd@hovoldconsulting.com> (raw)
In-Reply-To: <8420c342-9dce-aea7-8d1e-f141e0c1ebb5@linaro.org>
On Mon, Nov 14, 2022 at 05:56:21PM +0100, Krzysztof Kozlowski wrote:
> On 14/11/2022 17:48, Johan Hovold wrote:
> > On Mon, Nov 14, 2022 at 05:39:26PM +0100, Krzysztof Kozlowski wrote:
> >> On 14/11/2022 17:32, Johan Hovold wrote:
> >
> >>> Fair enough, I'll drop it. But there doesn't seem to be a good way to
> >>> describe the indexes currently and most bindings simply ignore to do so.
> >>>
> >>> So what is the preference then? Just leave things undocumented, listing
> >>> indexes in a free-text 'description', or adding a free-text reference to
> >>> a binding header file and using those define names in a free-text
> >>> 'description'?
> >>
> >> Either 2 or 3. Several bindings for small number of constants choose
> >> option 2.
> >
> > Ok, we have three now, but USB4 will bump this to ten or so.
>
> Then probably header file is the way to go.
>
> >
> >>> And if going with the last option, does this mean that every SoC and PHY
> >>> type needs its own header for those three clocks or so to avoid having
> >>> a common dumping ground header file where indexes will not necessarily
> >>> be 0-based and consecutive.
> >>
> >> phy-qcom-qmp-combo.c has one qcom_qmp_dp_clks_hw_get(), so why would you
> >> have many of header files?
> >
> > We don't know what kind of clock outputs later revisions of these PHYs
> > will have. The only way to guarantee 0-based consecutive indexes appears
> > to be to use per-SoC defines (e.g. as for the GCC bindings).
>
> Which is also fine. I don't understand still why it is a problem - even
> if you have multiple files, one for each SoC/phy. If USB4 brings here 10
> more clocks and other SoCs/phys might bring many more options, then what
> else can you do? Grow the binding file with big text-based mapping of
> IDs? It's not a viable solution. Header or headers is the only
> maintainable way for such cases.
So then we must add per-SoC (and PHY type) headers even if we can
possibly reuse defines from one platform for another as long as they
appear to be similar enough? For example, using a "SC7180_USB3_DP" infix
for the current platforms and add a new series of indexes for SC8280XP:
QMP_SC7180_USB3_DP_USB3_PIPE 0
QMP_SC7180_USB3_DP_DP_LINK 1
QMP_SC7180_USB3_DP_DP_VCO_DIV 2
QMP_SC8280XP_USB4_USB3_DP_USB3_PIPE 0
QMP_SC8280XP_USB4_USB3_DP_DP_LINK 1
QMP_SC8280XP_USB4_USB3_DP_DP_VCO_DIV 2
QMP_SC8280XP_USB4_USB3_DP_USB4_PCIE_PIPE 3
...
QMP_SC8280XP_USB4_USB3_DP_USB4_RX1 9
Johan
next prev parent reply other threads:[~2022-11-14 17:08 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-11 9:24 [PATCH 00/14] phy: qcom-qmp-combo: fix sc8280xp binding (set 3/3) Johan Hovold
2022-11-11 9:24 ` [PATCH 01/14] dt-bindings: phy: qcom,qmp-usb3-dp: rename current bindings Johan Hovold
2022-11-11 15:15 ` Krzysztof Kozlowski
2022-11-11 9:24 ` [PATCH 02/14] dt-bindings: phy: qcom,qmp-usb3-dp: fix sc8280xp bindings Johan Hovold
2022-11-11 13:24 ` Johan Hovold
2022-11-11 13:30 ` Rob Herring
2022-11-11 15:17 ` Krzysztof Kozlowski
2022-11-14 13:27 ` Johan Hovold
2022-11-14 14:07 ` Krzysztof Kozlowski
2022-11-14 14:18 ` Johan Hovold
2022-11-14 15:19 ` Dmitry Baryshkov
2022-11-14 15:38 ` Johan Hovold
2022-11-14 16:14 ` Dmitry Baryshkov
2022-11-14 16:42 ` Johan Hovold
2022-11-14 16:51 ` Dmitry Baryshkov
2022-11-14 16:53 ` Johan Hovold
2022-11-14 15:49 ` Krzysztof Kozlowski
2022-11-14 16:32 ` Johan Hovold
2022-11-14 16:39 ` Krzysztof Kozlowski
2022-11-14 16:48 ` Johan Hovold
2022-11-14 16:56 ` Krzysztof Kozlowski
2022-11-14 17:08 ` Johan Hovold [this message]
2022-11-15 8:12 ` Krzysztof Kozlowski
2022-11-15 14:22 ` Johan Hovold
2022-11-15 14:56 ` Krzysztof Kozlowski
2022-11-12 11:43 ` Dmitry Baryshkov
2022-11-14 13:37 ` Johan Hovold
2022-11-14 15:31 ` Dmitry Baryshkov
2022-11-14 16:21 ` Johan Hovold
2022-11-11 9:24 ` [PATCH 03/14] phy: qcom-qmp-combo: drop v4 reference-clock source Johan Hovold
2022-11-12 11:43 ` Dmitry Baryshkov
2022-11-14 13:03 ` Johan Hovold
2022-11-11 9:24 ` [PATCH 04/14] phy: qcom-qmp-combo: restructure PHY creation Johan Hovold
2022-11-11 9:28 ` Johan Hovold
2022-11-11 15:18 ` Krzysztof Kozlowski
2022-11-11 15:19 ` Krzysztof Kozlowski
2022-11-11 9:24 ` [PATCH 05/14] phy: qcom-qmp-combo: register clocks sooner Johan Hovold
2022-11-12 11:15 ` Dmitry Baryshkov
2022-11-14 13:42 ` Johan Hovold
2022-11-11 9:24 ` [PATCH 06/14] phy: qcom-qmp-combo: generate pipe clock name Johan Hovold
2022-11-12 11:15 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 07/14] phy: qcom-qmp-combo: drop redundant clock structure Johan Hovold
2022-11-12 11:16 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 08/14] phy: qcom-qmp-combo: drop redundant clock allocation Johan Hovold
2022-11-12 11:17 ` Dmitry Baryshkov
2022-11-14 12:42 ` Johan Hovold
2022-11-14 15:31 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 09/14] phy: qcom-qmp-combo: add clock registration helper Johan Hovold
2022-11-14 10:12 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 10/14] phy: qcom-qmp-combo: separate clock and provider registration Johan Hovold
2022-11-14 10:13 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 11/14] phy: qcom-qmp-combo: clean up DP clock callbacks Johan Hovold
2022-11-12 11:20 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 12/14] phy: qcom-qmp-combo: rename common-register pointers Johan Hovold
2022-11-12 11:31 ` Dmitry Baryshkov
2022-11-14 12:54 ` Johan Hovold
2022-11-14 15:38 ` Dmitry Baryshkov
2022-11-14 15:51 ` Johan Hovold
2022-11-11 9:24 ` [PATCH 13/14] phy: qcom-qmp-combo: rename DP_PHY register pointer Johan Hovold
2022-11-12 11:31 ` Dmitry Baryshkov
2022-11-11 9:24 ` [PATCH 14/14] phy: qcom-qmp-combo: add support for updated sc8280xp binding Johan Hovold
2022-11-12 11:36 ` Dmitry Baryshkov
2022-11-14 12:58 ` Johan Hovold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y3J2AjjjsybI9mKd@hovoldconsulting.com \
--to=johan@kernel.org \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=johan+linaro@kernel.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=robh+dt@kernel.org \
--cc=vkoul@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox