mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Michal Simek <michal.simek@amd.com>
To: Leo Yan <leo.yan@arm.com>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@arm.com>,
	James Clark <james.clark@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Wei Xu <xuwei5@hisilicon.com>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>
Cc: coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH 4/5] ARM: dts: zynq: Use dynamic CoreSight funnel and trim clocks
Date: Mon, 12 Oct 2026 14:37:25 +0200	[thread overview]
Message-ID: <917db1e3-1bfa-453b-b993-55ae20fa3055@amd.com> (raw)
In-Reply-To: <20261002-arm_coresight_hi3660_remove_dynamic_funnel_clocks-v1-4-c3edca1c480b@arm.com>



On 10/2/26 17:07, Leo Yan wrote:
> The Zynq-7000 funnel at 0xf8804000 has input-enable registers.
> Describe it as a dynamic funnel so the CoreSight driver programs
> them. Keep the existing apb_pclk reference required by AMBA probing.
> 
> The static replicator has no programming registers, so remove its
> clock references. CoreSight drivers do not request dbg_trc or dbg_apb
> for the funnel, ETB, TPIU or PTMs. Drop those references while keeping
> apb_pclk for the programmable AMBA devices.
> 
> The Zynq clock controller registers dbg_trc and dbg_apb and calls
> clk_prepare_enable() for each gate the bootloader left on (see
> zynq_clk_setup()). This does not depend on the CoreSight nodes' clock
> references, so removing the unused consumer entries leaves this
> protection intact.
> 
> Assisted-by: Codex:gpt-6
> Signed-off-by: Leo Yan <leo.yan@arm.com>
> ---
>   arch/arm/boot/dts/xilinx/zynq-7000.dtsi | 24 +++++++++++-------------
>   1 file changed, 11 insertions(+), 13 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/xilinx/zynq-7000.dtsi b/arch/arm/boot/dts/xilinx/zynq-7000.dtsi
> index 153b8d93cbee2c30b399c0770f2022b307fe0808..4280fe6da379064b6ac5bf9e9a5b891830a094b2 100644
> --- a/arch/arm/boot/dts/xilinx/zynq-7000.dtsi
> +++ b/arch/arm/boot/dts/xilinx/zynq-7000.dtsi
> @@ -68,8 +68,6 @@ regulator_vccpint: fixedregulator {
>   
>   	replicator {
>   		compatible = "arm,coresight-static-replicator";
> -		clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>;
> -		clock-names = "apb_pclk", "dbg_trc", "dbg_apb";
>   
>   		out-ports {
>   			#address-cells = <1>;
> @@ -464,8 +462,8 @@ watchdog0: watchdog@f8005000 {
>   		etb@f8801000 {
>   			compatible = "arm,coresight-etb10", "arm,primecell";
>   			reg = <0xf8801000 0x1000>;
> -			clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>;
> -			clock-names = "apb_pclk", "dbg_trc", "dbg_apb";
> +			clocks = <&clkc 27>;
> +			clock-names = "apb_pclk";
>   			in-ports {
>   				port {
>   					etb_in_port: endpoint {
> @@ -478,8 +476,8 @@ etb_in_port: endpoint {
>   		tpiu@f8803000 {
>   			compatible = "arm,coresight-tpiu", "arm,primecell";
>   			reg = <0xf8803000 0x1000>;
> -			clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>;
> -			clock-names = "apb_pclk", "dbg_trc", "dbg_apb";
> +			clocks = <&clkc 27>;
> +			clock-names = "apb_pclk";
>   			in-ports {
>   				port {
>   					tpiu_in_port: endpoint {
> @@ -490,10 +488,10 @@ tpiu_in_port: endpoint {
>   		};
>   
>   		funnel@f8804000 {
> -			compatible = "arm,coresight-static-funnel", "arm,primecell";
> +			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
>   			reg = <0xf8804000 0x1000>;
> -			clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>;
> -			clock-names = "apb_pclk", "dbg_trc", "dbg_apb";
> +			clocks = <&clkc 27>;
> +			clock-names = "apb_pclk";
>   
>   			/* funnel output ports */
>   			out-ports {
> @@ -536,8 +534,8 @@ funnel0_in_port2: endpoint {
>   		ptm@f889c000 {
>   			compatible = "arm,coresight-etm3x", "arm,primecell";
>   			reg = <0xf889c000 0x1000>;
> -			clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>;
> -			clock-names = "apb_pclk", "dbg_trc", "dbg_apb";
> +			clocks = <&clkc 27>;
> +			clock-names = "apb_pclk";
>   			cpu = <&cpu0>;
>   			out-ports {
>   				port {
> @@ -551,8 +549,8 @@ ptm0_out_port: endpoint {
>   		ptm@f889d000 {
>   			compatible = "arm,coresight-etm3x", "arm,primecell";
>   			reg = <0xf889d000 0x1000>;
> -			clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>;
> -			clock-names = "apb_pclk", "dbg_trc", "dbg_apb";
> +			clocks = <&clkc 27>;
> +			clock-names = "apb_pclk";
>   			cpu = <&cpu1>;
>   			out-ports {
>   				port {
> 

Look at my reply in 1/5 and NACK for this. Clock 46/47 needs to be handled and 
described in DT. It means removing them make no sense.

Thanks,
Michal

  reply	other threads:[~2026-10-12 12:37 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-02 15:07 [PATCH 0/5] arm: coresight: Clean up funnel and replicator clocks Leo Yan
2026-10-02 15:07 ` [PATCH 1/5] dt-bindings: arm: coresight: Limit static replicator to atclk Leo Yan
2026-10-05 17:40   ` Rob Herring (Arm)
2026-10-12 12:35   ` Michal Simek
2026-10-12 16:28     ` Leo Yan
2026-10-13  5:53       ` Michal Simek
2026-10-02 15:07 ` [PATCH 2/5] dt-bindings: arm: coresight: Allow atclk for static funnel Leo Yan
2026-10-05 17:41   ` Rob Herring (Arm)
2026-10-02 15:07 ` [PATCH 3/5] arm64: dts: hisilicon: Drop PCLK from static CoreSight links Leo Yan
2026-10-09  1:04   ` Wei Xu
2026-10-02 15:07 ` [PATCH 4/5] ARM: dts: zynq: Use dynamic CoreSight funnel and trim clocks Leo Yan
2026-10-12 12:37   ` Michal Simek [this message]
2026-10-02 15:07 ` [PATCH 5/5] ARM: dts: qcom: apq8064: Drop PCLK from static replicator Leo Yan
2026-10-02 15:21   ` Dmitry Baryshkov
2026-10-02 15:33     ` Leo Yan
2026-10-02 16:05       ` Dmitry Baryshkov
2026-10-05 14:47         ` Leo Yan

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=917db1e3-1bfa-453b-b993-55ae20fa3055@amd.com \
    --to=michal.simek@amd.com \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=coresight@lists.linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=james.clark@linaro.org \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=leo.yan@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=mike.leach@arm.com \
    --cc=robh@kernel.org \
    --cc=suzuki.poulose@arm.com \
    --cc=xuwei5@hisilicon.com \
    /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®