public inbox for linux-clk@vger.kernel.org
 help / color / mirror / Atom feed
From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: linux@smankusors.com, Bjorn Andersson <andersson@kernel.org>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>, Lee Jones <lee@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Cc: Krzysztof Kozlowski <krzk@kernel.org>,
	linux-arm-msm@vger.kernel.org, linux-clk@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	phone-devel@vger.kernel.org, Rudraksha Gupta <guptarud@gmail.com>
Subject: Re: [PATCH 05/10] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks
Date: Wed, 15 Apr 2026 11:28:40 +0200	[thread overview]
Message-ID: <7d25970d-c2e8-432e-b69f-0da99271b581@oss.qualcomm.com> (raw)
In-Reply-To: <20260414-msm8960-wifi-v1-5-007fda9d6134@smankusors.com>

On 4/13/26 8:55 PM, Antony Kurniawan Soemardi via B4 Relay wrote:
> From: Antony Kurniawan Soemardi <linux@smankusors.com>
> 
> The RPM clock controller manages clocks shared between the application
> processor and the RPM firmware, including fabric and bus clocks required
> by several peripherals.
> 
> With the RPM clock controller now available in the device tree, the USB
> controller must explicitly declare its dependency on
> RPM_DAYTONA_FABRIC_CLK. Without this declaration, the clock framework
> would consider it unused and disable it, breaking USB functionality.
> 
> This also corrects the previous misuse of USB_HS1_XCVR_CLK as the core
> clock. The XCVR clock is in fact used for PHY/reset handling rather than
> as the main core clock.
> 
> A similar issue has been observed on APQ8064, where missing the RPM
> fabric clock dependency leads to broken USB.
> 
> Signed-off-by: Antony Kurniawan Soemardi <linux@smankusors.com>
> ---
>  arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 16 ++++++++++++++--
>  1 file changed, 14 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
> index fd28401cebb5..1d5e97b6aa4b 100644
> --- a/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
> +++ b/arch/arm/boot/dts/qcom/qcom-msm8960.dtsi
> @@ -5,6 +5,7 @@
>  #include <dt-bindings/clock/qcom,gcc-msm8960.h>
>  #include <dt-bindings/reset/qcom,gcc-msm8960.h>
>  #include <dt-bindings/clock/qcom,lcc-msm8960.h>
> +#include <dt-bindings/clock/qcom,rpmcc.h>
>  #include <dt-bindings/mfd/qcom-rpm.h>
>  #include <dt-bindings/soc/qcom,gsbi.h>
>  
> @@ -98,6 +99,13 @@ rpm: rpm@108000 {
>  			interrupt-names = "ack",
>  					  "err",
>  					  "wakeup";
> +
> +			rpmcc: clock-controller {
> +				compatible = "qcom,rpmcc-msm8960", "qcom,rpmcc";
> +				#clock-cells = <1>;
> +				clocks = <&pxo_board>, <&cxo_board>;
> +				clock-names = "pxo", "cxo";

nit: one a line would be preferred

> +			};
>  		};
>  
>  		ssbi: ssbi@500000 {
> @@ -507,8 +515,12 @@ usb1: usb@12500000 {
>  			reg = <0x12500000 0x200>,
>  			      <0x12500200 0x200>;
>  			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
> -			clocks = <&gcc USB_HS1_XCVR_CLK>, <&gcc USB_HS1_H_CLK>;
> -			clock-names = "core", "iface";
> +			clocks = <&rpmcc RPM_DAYTONA_FABRIC_CLK>,

I still have mixed feelings whether this should be a clock or an
interconnect resource..

Some internal data tells me this is used by:

* USB
* SDCC
* GSBI
* INTC
* APSS?
* BAM DMA

or anything that is adjacent to SPS. I think any/all clients vote either
zero/off or 64 MHz, on MSM8960. It seems to be an IP that wasn't really
used for a long time (and a long time ago, at that), so it's difficult to
judge.

I see that the list above is roughy in line with where msm-3.x attaches
the votes (also for QSEECOM and friends).. 

+Dmitry, would you know more?

Konrad

  reply	other threads:[~2026-04-15  9:28 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-13 18:55 [PATCH 00/10] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi via B4 Relay
2026-04-13 18:55 ` [PATCH 01/10] dt-bindings: clock: qcom,rpmcc: add msm8960 compatible Antony Kurniawan Soemardi via B4 Relay
2026-04-14  7:18   ` Krzysztof Kozlowski
2026-04-13 18:55 ` [PATCH 02/10] dt-bindings: mfd: syscon: add qcom,msm8960-sps-sic Antony Kurniawan Soemardi via B4 Relay
2026-04-14  7:19   ` Krzysztof Kozlowski
2026-04-14 18:34     ` Antony Kurniawan Soemardi
2026-04-15  6:51       ` Krzysztof Kozlowski
2026-04-16 14:18         ` Antony Kurniawan Soemardi
2026-04-13 18:55 ` [PATCH 03/10] mfd: qcom_rpm: add msm8960 QDSS clock resource Antony Kurniawan Soemardi via B4 Relay
2026-04-14  8:06   ` Konrad Dybcio
2026-04-14  8:07     ` Konrad Dybcio
2026-04-15 15:20       ` Antony Kurniawan Soemardi
2026-04-16 13:49         ` Konrad Dybcio
2026-04-18 16:11           ` Dmitry Baryshkov
2026-04-18 16:14   ` Dmitry Baryshkov
2026-04-13 18:55 ` [PATCH 04/10] clk: qcom: clk-rpm: add msm8960 compatible Antony Kurniawan Soemardi via B4 Relay
2026-04-14  8:08   ` Konrad Dybcio
2026-04-13 18:55 ` [PATCH 05/10] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks Antony Kurniawan Soemardi via B4 Relay
2026-04-15  9:28   ` Konrad Dybcio [this message]
2026-04-18 16:44     ` Dmitry Baryshkov
2026-04-13 18:55 ` [PATCH 06/10] ARM: dts: qcom: msm8960: add SCM Antony Kurniawan Soemardi via B4 Relay
2026-04-14  9:46   ` Konrad Dybcio
2026-04-18 16:45     ` Dmitry Baryshkov
2026-04-13 18:55 ` [PATCH 07/10] ARM: dts: qcom: msm8960: add SMEM & hwmutex Antony Kurniawan Soemardi via B4 Relay
2026-04-14  9:38   ` Konrad Dybcio
2026-04-18 16:46   ` Dmitry Baryshkov
2026-04-13 18:55 ` [PATCH 08/10] ARM: dts: qcom: msm8960: add SMSM & SPS Antony Kurniawan Soemardi via B4 Relay
2026-04-15  9:21   ` Konrad Dybcio
2026-04-18 16:53   ` Dmitry Baryshkov
2026-04-13 18:55 ` [PATCH 09/10] ARM: dts: qcom: msm8960: add Riva Antony Kurniawan Soemardi via B4 Relay
2026-04-18 17:46   ` Dmitry Baryshkov
2026-04-13 18:55 ` [PATCH 10/10] ARM: dts: qcom: msm8960: huashan: enable Wi-Fi and Bluetooth Antony Kurniawan Soemardi via B4 Relay
2026-04-14  9:41   ` Konrad Dybcio
  -- strict thread matches above, loose matches on Subject: below --
2026-04-13 18:32 [PATCH 00/10] ARM: qcom: msm8960: enable WCNSS (Bluetooth & Wi-Fi) Antony Kurniawan Soemardi
2026-04-13 18:33 ` [PATCH 05/10] ARM: dts: qcom: msm8960: add RPM clock controller and fix USB clocks Antony Kurniawan Soemardi

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=7d25970d-c2e8-432e-b69f-0da99271b581@oss.qualcomm.com \
    --to=konrad.dybcio@oss.qualcomm.com \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=guptarud@gmail.com \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=krzk@kernel.org \
    --cc=lee@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@smankusors.com \
    --cc=mturquette@baylibre.com \
    --cc=phone-devel@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=sboyd@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