mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Harshal Dev <harshal.dev@oss.qualcomm.com>
To: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	Herbert Xu <herbert@gondor.apana.org.au>,
	"David S. Miller" <davem@davemloft.net>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Abel Vesa <abel.vesa@oss.qualcomm.com>,
	cros-qcom-dts-watchers@chromium.org
Cc: Brian Masney <bmasney@redhat.com>,
	Neeraj Soni <neeraj.soni@oss.qualcomm.com>,
	Gaurav Kashyap <gaurav.kashyap@oss.qualcomm.com>,
	linux-arm-msm@vger.kernel.org, linux-crypto@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 11/11] soc: qcom: ice: Add explicit power-domain and clock voting calls for ICE
Date: Tue, 3 Feb 2026 15:01:45 +0530	[thread overview]
Message-ID: <0f8c0e5e-4921-47e8-b602-e6c08bb1f6f8@oss.qualcomm.com> (raw)
In-Reply-To: <646bee0a-8b10-4fa8-9d17-030876179c02@oss.qualcomm.com>

Hi Konrad,

On 1/30/2026 4:16 PM, Konrad Dybcio wrote:
> On 1/23/26 12:12 PM, Harshal Dev wrote:
>> Hi Krzysztof,
>>
>> On 1/23/2026 4:27 PM, Krzysztof Kozlowski wrote:
>>> On 23/01/2026 09:58, Krzysztof Kozlowski wrote:
>>>>>  
>>>>>  	return 0;
>>>>> @@ -584,6 +597,10 @@ static struct qcom_ice *qcom_ice_create(struct device *dev,
>>>>>  	if (IS_ERR(engine->core_clk))
>>>>>  		return ERR_CAST(engine->core_clk);
>>>>>  
>>>>> +	engine->iface_clk = devm_clk_get_enabled(dev, "iface_clk");
>>>>> +	if (IS_ERR(engine->iface_clk))
>>>>> +		return ERR_CAST(engine->iface_clk);
>>>>
>>>> And here actual breakage of ALL in-tree and out-of-tree DTS.
>>>>
>>>> NAK.
>>>>
>>>> Please read internal guideline.
>>>
>>> Internal docs are pretty scattered and messy so I failed to find this
>>> there, which is surprising because this was frequent feedback. Therefore
>>> please update Kernel Upstreaming internal page with following:
>>>
>>> With few exceptions, it is not allowed to break the ABI, by making
>>> bindings or driver changes, where the existing or out of tree DTS would
>>> fail to boot. Updating in-tree DTS does not matter here, because DTS
>>> goes via different branch, thus driver branch would be always broken.
>>> This is explicitly documented in DT rules and explained also in
>>> maintainer-soc profile.
>>>
>>> You need to either provide strong justification for ABI break or make
>>> the changes backwards compatible.
> 
> If the ICE can not be powered on alone without this change (i.e. no UFS,
> just ICE), then please spell it out explicitly, Harshal. That makes for a
> valid reason to break the ABI.
> 
> Plus the fact that without an OPP table, the voltage requirements cannot
> be guaranteed to be met
> 

Ack, I have endorsed and stated this point on the DT-binding commit.
I'll wait for Krzysztof's view before updating the commit message to
strongly reflect this point.

>>
>> Ack and understood. Let me write this in a way that makes it backward
>> compatible by using devm_clk_get_optional_enabled(). Like I explained, for
>> Linux distros where CONFIG_SCSI_UFS_QCOM is override set to 'y'. This
>> clock vote isn't really needed during probe.
> 
> This is really a side-effect that we shouldn't be depending on, or
> even considering as a backup, since the UFS driver may change
> independently and stop behaving this way one day
> 
>> In qcom_ice_suspend/resume(). I'll only prepare/un-prepare this clock
>> if it was found during probe.
> 
> Clock APIs generally happily eat nullptrs

Ack, then I guess in either case we can continue to keep the calls to
prepare/un-prepare. Anyways, I am convinced we should specify and use the
'iface' clock.

Thanks,
Harshal

> 
> Konrad


  reply	other threads:[~2026-02-03  9:31 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-23  7:11 [PATCH 00/11] Add explicit power-domain and clock voting for QCOM-ICE Harshal Dev
2026-01-23  7:11 ` [PATCH 01/11] dt-bindings: crypto: qcom,ice: Require power-domain and iface clk Harshal Dev
2026-01-23  8:57   ` Krzysztof Kozlowski
2026-01-23 11:04     ` Harshal Dev
2026-01-26 10:29       ` Konrad Dybcio
2026-02-03  9:26         ` Harshal Dev
2026-02-05 11:17           ` Krzysztof Kozlowski
2026-02-06 10:07             ` Harshal Dev
2026-02-06 10:50               ` Krzysztof Kozlowski
2026-02-09  5:43                 ` Harshal Dev
2026-02-09  7:44                   ` Krzysztof Kozlowski
2026-02-20 14:31                   ` Manivannan Sadhasivam
2026-02-20 15:59                     ` Bjorn Andersson
2026-03-03  6:29                       ` Harshal Dev
2026-03-03 16:55                       ` Manivannan Sadhasivam
2026-01-23  7:11 ` [PATCH 02/11] arm64: dts: qcom: kaanpali: Add power-domain and iface clk for ice node Harshal Dev
2026-01-23  7:11 ` [PATCH 03/11] arm64: dts: qcom: lemans: " Harshal Dev
2026-01-23  7:11 ` [PATCH 04/11] arm64: dts: qcom: monaco: " Harshal Dev
2026-01-23  7:11 ` [PATCH 05/11] arm64: dts: qcom: sc7180: " Harshal Dev
2026-01-23  7:11 ` [PATCH 06/11] arm64: dts: qcom: kodiak: " Harshal Dev
2026-01-23  7:11 ` [PATCH 07/11] arm64: dts: qcom: sm8450: " Harshal Dev
2026-01-23  7:11 ` [PATCH 08/11] arm64: dts: qcom: sm8550: " Harshal Dev
2026-01-23  7:11 ` [PATCH 09/11] arm64: dts: qcom: sm8650: " Harshal Dev
2026-01-23  7:11 ` [PATCH 10/11] arm64: dts: qcom: sm8750: " Harshal Dev
2026-01-23  7:11 ` [PATCH 11/11] soc: qcom: ice: Add explicit power-domain and clock voting calls for ICE Harshal Dev
2026-01-23  8:58   ` Krzysztof Kozlowski
2026-01-23 10:57     ` Krzysztof Kozlowski
2026-01-23 11:12       ` Harshal Dev
2026-01-30 10:46         ` Konrad Dybcio
2026-02-03  9:31           ` Harshal Dev [this message]
2026-02-20 14:44   ` Manivannan Sadhasivam
2026-03-03  8:41     ` Harshal Dev
2026-03-03 17:08       ` Manivannan Sadhasivam
2026-03-09 11:59         ` Harshal Dev
2026-03-09 12:20           ` Manivannan Sadhasivam
2026-02-21 11:45   ` Abel Vesa
2026-03-03 11:13     ` Harshal Dev

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=0f8c0e5e-4921-47e8-b602-e6c08bb1f6f8@oss.qualcomm.com \
    --to=harshal.dev@oss.qualcomm.com \
    --cc=abel.vesa@oss.qualcomm.com \
    --cc=andersson@kernel.org \
    --cc=bmasney@redhat.com \
    --cc=conor+dt@kernel.org \
    --cc=cros-qcom-dts-watchers@chromium.org \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=gaurav.kashyap@oss.qualcomm.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=konrad.dybcio@oss.qualcomm.com \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=neeraj.soni@oss.qualcomm.com \
    --cc=robh@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

all inboxes | Powered by JetHome®