All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johan Hovold <johan@kernel.org>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
	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>,
	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 17:42:09 +0100	[thread overview]
Message-ID: <Y3Jv4ePkPiKiG8wj@hovoldconsulting.com> (raw)
In-Reply-To: <bcc327b6-c38b-86a9-34cb-440ad33df210@linaro.org>

On Mon, Nov 14, 2022 at 07:14:48PM +0300, Dmitry Baryshkov wrote:
> On 14/11/2022 18:38, Johan Hovold wrote:
> > On Mon, Nov 14, 2022 at 06:19:25PM +0300, Dmitry Baryshkov wrote:
> >> On 14/11/2022 17:18, Johan Hovold wrote:
> >>> On Mon, Nov 14, 2022 at 03:07:41PM +0100, Krzysztof Kozlowski wrote:
> >>>> On 14/11/2022 14:27, Johan Hovold wrote:
> >>>>> On Fri, Nov 11, 2022 at 04:17:29PM +0100, Krzysztof Kozlowski wrote:
> >>>>>> On 11/11/2022 10:24, Johan Hovold wrote:
> > 
> >>>>> I noticed that several bindings leave the clock indexes unspecified, or
> >>>>> have header files defining some or all of them. I first added a QMP
> >>>>> header but that seemed like overkill, especially if we'd end up with
> >>>>> one header per SoC (cf. the GCC headers) due to (known and potential)
> >>>>> platform differences.
> > 
> >>>>> Shall I add back a shared header for all PHYs handled by this driver
> >>>>> (another implementation detail) even if this could eventually lead to
> >>>>> describing clocks not supported by a particular SoC (so such constraints
> >>>>> would still need to be described by the binding somehow):
> >>>>>
> >>>>> 	/* QMP clocks */
> >>>>> 	#define QMP_USB3_PIPE_CLK	0
> >>>>> 	#define QMP_DP_LINK_CLK		1
> >>>>> 	#define QMP_DP_VCO_DIV_CLK	2
> >>
> >> Maybe QMP_COMBO_USB3_PIPE_CLK, QMP_COMBO_DP_LINK_CLK,
> >> QMP_COMBO_DP_VCO_DIV_CLK?
> > 
> > "COMBO" is just the name of the Linux driver and does not belong in the
> > binding.
> 
> We do not have any standard (iow, coming from the docs) name, so we can 
> invent it on our own.

I still think the naming should reflect the hardware and not the Linux
implementation if this is going into the binding.

And the USB4_USB3_DP defines are going to be a superset of USB3_DP (as
far we know know).

> >> I'll then extend this header with QMP_UFS_RX_SYMBOL_0_CLK
> >> QMP_UFS_RX_SYMBOL_1_CLK and QMP_UFS_TX_SYMBOL_0_CLK.
> > 
> > Yeah, I had those in mind when creating the header and using a generic
> > QMP prefix (even if I didn't end up using the header in v1).
> > 
> > This could just be mapping of (arbitrary) QMP indexes to clocks and we
> > use it for USB3, DP, UFS and later also USB4.
> > 
> > This will however mean that the indexes are not necessarily zero-based
> > and consecutive for a specific SoC and PHY. But that's perhaps a
> > non-issue (cf. the PHY_TYPE defines).
> 
> Ugh. Please, no. We have symbol clocks for UFS PHY, USB+DP clocks for 
> USB+DP PHY, but let's not go for the unified clocks index definition.

Yeah, this is the kind of issues I wanted to avoid by not using a per
SoC header for three clocks which will almost always use the same
indexes.

Because how can you be sure that your unified per-PHY type defines will
never have to be amended? Or some index left out?

The only way then is to have per-SoC defines which is a pain to
maintain (just consider that driver mapping table when some odd SoC
shows up).

Johan

WARNING: multiple messages have this Message-ID (diff)
From: Johan Hovold <johan@kernel.org>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
	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>,
	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 17:42:09 +0100	[thread overview]
Message-ID: <Y3Jv4ePkPiKiG8wj@hovoldconsulting.com> (raw)
In-Reply-To: <bcc327b6-c38b-86a9-34cb-440ad33df210@linaro.org>

On Mon, Nov 14, 2022 at 07:14:48PM +0300, Dmitry Baryshkov wrote:
> On 14/11/2022 18:38, Johan Hovold wrote:
> > On Mon, Nov 14, 2022 at 06:19:25PM +0300, Dmitry Baryshkov wrote:
> >> On 14/11/2022 17:18, Johan Hovold wrote:
> >>> On Mon, Nov 14, 2022 at 03:07:41PM +0100, Krzysztof Kozlowski wrote:
> >>>> On 14/11/2022 14:27, Johan Hovold wrote:
> >>>>> On Fri, Nov 11, 2022 at 04:17:29PM +0100, Krzysztof Kozlowski wrote:
> >>>>>> On 11/11/2022 10:24, Johan Hovold wrote:
> > 
> >>>>> I noticed that several bindings leave the clock indexes unspecified, or
> >>>>> have header files defining some or all of them. I first added a QMP
> >>>>> header but that seemed like overkill, especially if we'd end up with
> >>>>> one header per SoC (cf. the GCC headers) due to (known and potential)
> >>>>> platform differences.
> > 
> >>>>> Shall I add back a shared header for all PHYs handled by this driver
> >>>>> (another implementation detail) even if this could eventually lead to
> >>>>> describing clocks not supported by a particular SoC (so such constraints
> >>>>> would still need to be described by the binding somehow):
> >>>>>
> >>>>> 	/* QMP clocks */
> >>>>> 	#define QMP_USB3_PIPE_CLK	0
> >>>>> 	#define QMP_DP_LINK_CLK		1
> >>>>> 	#define QMP_DP_VCO_DIV_CLK	2
> >>
> >> Maybe QMP_COMBO_USB3_PIPE_CLK, QMP_COMBO_DP_LINK_CLK,
> >> QMP_COMBO_DP_VCO_DIV_CLK?
> > 
> > "COMBO" is just the name of the Linux driver and does not belong in the
> > binding.
> 
> We do not have any standard (iow, coming from the docs) name, so we can 
> invent it on our own.

I still think the naming should reflect the hardware and not the Linux
implementation if this is going into the binding.

And the USB4_USB3_DP defines are going to be a superset of USB3_DP (as
far we know know).

> >> I'll then extend this header with QMP_UFS_RX_SYMBOL_0_CLK
> >> QMP_UFS_RX_SYMBOL_1_CLK and QMP_UFS_TX_SYMBOL_0_CLK.
> > 
> > Yeah, I had those in mind when creating the header and using a generic
> > QMP prefix (even if I didn't end up using the header in v1).
> > 
> > This could just be mapping of (arbitrary) QMP indexes to clocks and we
> > use it for USB3, DP, UFS and later also USB4.
> > 
> > This will however mean that the indexes are not necessarily zero-based
> > and consecutive for a specific SoC and PHY. But that's perhaps a
> > non-issue (cf. the PHY_TYPE defines).
> 
> Ugh. Please, no. We have symbol clocks for UFS PHY, USB+DP clocks for 
> USB+DP PHY, but let's not go for the unified clocks index definition.

Yeah, this is the kind of issues I wanted to avoid by not using a per
SoC header for three clocks which will almost always use the same
indexes.

Because how can you be sure that your unified per-PHY type defines will
never have to be amended? Or some index left out?

The only way then is to have per-SoC defines which is a pain to
maintain (just consider that driver mapping table when some odd SoC
shows up).

Johan

-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy

  reply	other threads:[~2022-11-14 16:42 UTC|newest]

Thread overview: 126+ 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 ` 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  9:24   ` Johan Hovold
2022-11-11 15:15   ` Krzysztof Kozlowski
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  9:24   ` Johan Hovold
2022-11-11 13:24   ` Johan Hovold
2022-11-11 13:24     ` Johan Hovold
2022-11-11 13:30   ` Rob Herring
2022-11-11 13:30     ` Rob Herring
2022-11-11 15:17   ` Krzysztof Kozlowski
2022-11-11 15:17     ` Krzysztof Kozlowski
2022-11-14 13:27     ` Johan Hovold
2022-11-14 13:27       ` Johan Hovold
2022-11-14 14:07       ` Krzysztof Kozlowski
2022-11-14 14:07         ` Krzysztof Kozlowski
2022-11-14 14:18         ` Johan Hovold
2022-11-14 14:18           ` Johan Hovold
2022-11-14 15:19           ` Dmitry Baryshkov
2022-11-14 15:19             ` Dmitry Baryshkov
2022-11-14 15:38             ` Johan Hovold
2022-11-14 15:38               ` Johan Hovold
2022-11-14 16:14               ` Dmitry Baryshkov
2022-11-14 16:14                 ` Dmitry Baryshkov
2022-11-14 16:42                 ` Johan Hovold [this message]
2022-11-14 16:42                   ` Johan Hovold
2022-11-14 16:51                   ` Dmitry Baryshkov
2022-11-14 16:51                     ` Dmitry Baryshkov
2022-11-14 16:53                     ` Johan Hovold
2022-11-14 16:53                       ` Johan Hovold
2022-11-14 15:49           ` Krzysztof Kozlowski
2022-11-14 15:49             ` Krzysztof Kozlowski
2022-11-14 16:32             ` Johan Hovold
2022-11-14 16:32               ` Johan Hovold
2022-11-14 16:39               ` Krzysztof Kozlowski
2022-11-14 16:39                 ` Krzysztof Kozlowski
2022-11-14 16:48                 ` Johan Hovold
2022-11-14 16:48                   ` Johan Hovold
2022-11-14 16:56                   ` Krzysztof Kozlowski
2022-11-14 16:56                     ` Krzysztof Kozlowski
2022-11-14 17:08                     ` Johan Hovold
2022-11-14 17:08                       ` Johan Hovold
2022-11-15  8:12                       ` Krzysztof Kozlowski
2022-11-15  8:12                         ` Krzysztof Kozlowski
2022-11-15 14:22                         ` Johan Hovold
2022-11-15 14:22                           ` Johan Hovold
2022-11-15 14:56                           ` Krzysztof Kozlowski
2022-11-15 14:56                             ` Krzysztof Kozlowski
2022-11-12 11:43   ` Dmitry Baryshkov
2022-11-12 11:43     ` Dmitry Baryshkov
2022-11-14 13:37     ` Johan Hovold
2022-11-14 13:37       ` Johan Hovold
2022-11-14 15:31       ` Dmitry Baryshkov
2022-11-14 15:31         ` Dmitry Baryshkov
2022-11-14 16:21         ` Johan Hovold
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-11  9:24   ` Johan Hovold
2022-11-12 11:43   ` Dmitry Baryshkov
2022-11-12 11:43     ` Dmitry Baryshkov
2022-11-14 13:03     ` Johan Hovold
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:24   ` Johan Hovold
2022-11-11  9:28   ` Johan Hovold
2022-11-11  9:28     ` Johan Hovold
2022-11-11 15:18     ` Krzysztof Kozlowski
2022-11-11 15:18       ` Krzysztof Kozlowski
2022-11-11 15:19     ` 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-11  9:24   ` Johan Hovold
2022-11-12 11:15   ` Dmitry Baryshkov
2022-11-12 11:15     ` Dmitry Baryshkov
2022-11-14 13:42     ` Johan Hovold
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-11  9:24   ` Johan Hovold
2022-11-12 11:15   ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-12 11:16   ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-12 11:17   ` Dmitry Baryshkov
2022-11-12 11:17     ` Dmitry Baryshkov
2022-11-14 12:42     ` Johan Hovold
2022-11-14 12:42       ` Johan Hovold
2022-11-14 15:31       ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-14 10:12   ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-14 10:13   ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-12 11:20   ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-12 11:31   ` Dmitry Baryshkov
2022-11-12 11:31     ` Dmitry Baryshkov
2022-11-14 12:54     ` Johan Hovold
2022-11-14 12:54       ` Johan Hovold
2022-11-14 15:38       ` Dmitry Baryshkov
2022-11-14 15:38         ` Dmitry Baryshkov
2022-11-14 15:51         ` Johan Hovold
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-11  9:24   ` Johan Hovold
2022-11-12 11:31   ` Dmitry Baryshkov
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-11  9:24   ` Johan Hovold
2022-11-12 11:36   ` Dmitry Baryshkov
2022-11-12 11:36     ` Dmitry Baryshkov
2022-11-14 12:58     ` Johan Hovold
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=Y3Jv4ePkPiKiG8wj@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.