devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To: Johan Hovold <johan@kernel.org>,
	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>,
	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:19:25 +0300	[thread overview]
Message-ID: <78cda6f8-849c-219a-8dbb-966c283c1a92@linaro.org> (raw)
In-Reply-To: <Y3JOO0kNnaNhnW3K@hovoldconsulting.com>

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:
>>>>> The current QMP USB3-DP PHY bindings are based on the original MSM8996
>>>>> binding which provided multiple PHYs per IP block and these in turn were
>>>>> described by child nodes.
> 
>>>>> +  "#clock-cells":
>>>>> +    const: 1
>>>>> +
>>>>> +  clock-output-names:
>>>>> +    items:
>>>>> +      - const: usb3_pipe
>>>>> +      - const: dp_link
>>>>> +      - const: dp_vco_div
>>>>
>>>> Why defining here fixed names? The purpose of this field is to actually
>>>> allow customizing these - at least in most cases. If these have to be
>>>> fixed, then driver should just instantiate these clocks with such names,
>>>> right?
>>>
>>> I'm only using these names as documentation of the indexes. The driver
>>
>> What do you mean by documentation of indexes? You require these specific
>> entries and do not allow anything else.
> 
> I'm using this property as documentation of the valid indexes that can
> be used when referring to clocks provided by this device.
> 
> There are currently three and the mapping is described by the
> 'clock-output-names' property.
>   
>>> doesn't use these names, but that's a Linux-specific implementation
>>> detail.
>>>
>>> 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.
>>
>> Headers for the names? I do not recall such but that does not seem right.
> 
> Headers for the indexes.
> 
>>>
>>> On the other hand reproducing this list in each node is admittedly a bit
>>> redundant.
>>>
>>> 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?

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.

>>
>> What are these about? To remind - we talk about names of clocks this
>> device creates. The output names. Whatever IDs you have are not related
>> to the names.
> 
> As I mentioned above, this is not about the names that Linux gives to
> its representation of these clocks. Its just about defining the valid
> indexes in the binding.
> 
> If you think that that using 'clock-output-names' for this is a bit too
> unconventional, I can add back the header with defines like the above
> instead.
> 
> Note that the clock schema has:
> 
>    clock-output-names:
>      description: |
>        Recommended to be a list of strings of clock output signal
>        names indexed by the first cell in the clock specifier.
>        However, the meaning of clock-output-names is domain
>        specific to the clock provider, ...
> 
> Johan

-- 
With best wishes
Dmitry


  reply	other threads:[~2022-11-14 15:19 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 [this message]
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
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=78cda6f8-849c-219a-8dbb-966c283c1a92@linaro.org \
    --to=dmitry.baryshkov@linaro.org \
    --cc=agross@kernel.org \
    --cc=andersson@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=johan+linaro@kernel.org \
    --cc=johan@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;
as well as URLs for NNTP newsgroup(s).