[PATCH 0/8] xilinx: Various DT changes and syncups

Hi,
I am sending some patches to fix bugs we found in xilinx release cycle. Also do some syncs to keep kernel/u-boot dts in pseudo sync.
Thanks, Michal
Jan Kiszka (1): arm64: dts: zcu100-revC: Give wifi some time after power-on
Michal Simek (4): arm64: zynqmp: Remove incorrect phy from DT for zcu102-revB up arm64: dts: zynqmp: Fix node names which contain "_" arm64: zynqmp: Sync gpio-controller name location arm64: zynqmp: Sync gem clock nodes with mainline Linux
Rob Herring (1): arm64: dts: Remove inconsistent use of 'arm,armv8' compatible string
Sudeep Holla (1): arm64: dts: zynqmp: replace gpio-key,wakeup with wakeup-source property
Zumeng Chen (1): ARM: dts: zynq: enablement of coresight topology
arch/arm/dts/zynq-7000.dtsi | 135 ++++++++++++++++++++++++++++ arch/arm/dts/zynqmp-clk-ccf.dtsi | 22 +++-- arch/arm/dts/zynqmp-clk.dtsi | 4 +- arch/arm/dts/zynqmp-zcu100-revC.dts | 7 +- arch/arm/dts/zynqmp-zcu102-revA.dts | 12 +-- arch/arm/dts/zynqmp-zcu102-revB.dts | 2 +- arch/arm/dts/zynqmp-zcu106-revA.dts | 4 +- arch/arm/dts/zynqmp-zcu111-revA.dts | 4 +- arch/arm/dts/zynqmp.dtsi | 14 +-- 9 files changed, 172 insertions(+), 32 deletions(-)

zcu102-revB/up are not removing phy from revA properly because of incorrect name.
Fixes: 2975a42b42c5 ("arm64: zynqmp: Use ethernet-phy as node name for ethernet phys") Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp-zcu102-revB.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/dts/zynqmp-zcu102-revB.dts b/arch/arm/dts/zynqmp-zcu102-revB.dts index 2132024a253d..38ec18816456 100644 --- a/arch/arm/dts/zynqmp-zcu102-revB.dts +++ b/arch/arm/dts/zynqmp-zcu102-revB.dts @@ -25,7 +25,7 @@ /* reset-gpios = <&tca6416_u97 6 GPIO_ACTIVE_LOW>; */ }; /* Cleanup from RevA */ - /delete-node/ phy@21; + /delete-node/ ethernet-phy@21; };
/* Fix collision with u61 */

From: Rob Herring robh@kernel.org
The 'arm,armv8' compatible string is only for software models. It adds little value otherwise and is inconsistently used as a fallback on some platforms. Remove it from those platforms.
This fixes warnings generated by the DT schema.
Reported-by: Michal Simek michal.simek@xilinx.com Cc: Mark Rutland mark.rutland@arm.com Cc: Will Deacon will.deacon@arm.com Acked-by: Antoine Tenart antoine.tenart@bootlin.com Acked-by: Nishanth Menon nm@ti.com Acked-by: Maxime Ripard maxime.ripard@bootlin.com Acked-by: Manivannan Sadhasivam manivannan.sadhasivam@linaro.org Acked-by: Chanho Min chanho.min@lge.com Acked-by: Krzysztof Kozlowski krzk@kernel.org Acked-by: Masahiro Yamada yamada.masahiro@socionext.com Acked-by: Gregory CLEMENT gregory.clement@bootlin.com Acked-by: Thierry Reding treding@nvidia.com Acked-by: Heiko Stuebner heiko@sntech.de Acked-by: Simon Horman horms+renesas@verge.net.au Acked-by: Tero Kristo t-kristo@ti.com Acked-by: Wei Xu xuwei5@hisilicon.com Acked-by: Liviu Dudau liviu.dudau@arm.com Acked-by: Matthias Brugger matthias.bgg@gmail.com Acked-by: Michal Simek michal.simek@xilinx.com Acked-by: Scott Branden scott.branden@broadcom.com Acked-by: Kevin Hilman khilman@baylibre.com Acked-by: Chunyan Zhang zhang.lyra@gmail.com Acked-by: Robert Richter rrichter@cavium.com Acked-by: Jisheng Zhang Jisheng.Zhang@synaptics.com Acked-by: Dinh Nguyen dinguyen@kernel.org Signed-off-by: Rob Herring robh@kernel.org Signed-off-by: Arnd Bergmann arnd@arndb.de Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp.dtsi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/dts/zynqmp.dtsi b/arch/arm/dts/zynqmp.dtsi index b453941baf05..8646c4c3a340 100644 --- a/arch/arm/dts/zynqmp.dtsi +++ b/arch/arm/dts/zynqmp.dtsi @@ -25,7 +25,7 @@ #size-cells = <0>;
cpu0: cpu@0 { - compatible = "arm,cortex-a53", "arm,armv8"; + compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; operating-points-v2 = <&cpu_opp_table>; @@ -34,7 +34,7 @@ };
cpu1: cpu@1 { - compatible = "arm,cortex-a53", "arm,armv8"; + compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; reg = <0x1>; @@ -43,7 +43,7 @@ };
cpu2: cpu@2 { - compatible = "arm,cortex-a53", "arm,armv8"; + compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; reg = <0x2>; @@ -52,7 +52,7 @@ };
cpu3: cpu@3 { - compatible = "arm,cortex-a53", "arm,armv8"; + compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; reg = <0x3>;

On Thu, Jan 9, 2020 at 11:19 PM Michal Simek michal.simek@xilinx.com wrote:
From: Rob Herring robh@kernel.org
The 'arm,armv8' compatible string is only for software models. It adds little value otherwise and is inconsistently used as a fallback on some platforms. Remove it from those platforms.
This fixes warnings generated by the DT schema.
Reported-by: Michal Simek michal.simek@xilinx.com Cc: Mark Rutland mark.rutland@arm.com Cc: Will Deacon will.deacon@arm.com Acked-by: Antoine Tenart antoine.tenart@bootlin.com Acked-by: Nishanth Menon nm@ti.com Acked-by: Maxime Ripard maxime.ripard@bootlin.com Acked-by: Manivannan Sadhasivam manivannan.sadhasivam@linaro.org Acked-by: Chanho Min chanho.min@lge.com Acked-by: Krzysztof Kozlowski krzk@kernel.org Acked-by: Masahiro Yamada yamada.masahiro@socionext.com Acked-by: Gregory CLEMENT gregory.clement@bootlin.com Acked-by: Thierry Reding treding@nvidia.com Acked-by: Heiko Stuebner heiko@sntech.de Acked-by: Simon Horman horms+renesas@verge.net.au Acked-by: Tero Kristo t-kristo@ti.com Acked-by: Wei Xu xuwei5@hisilicon.com Acked-by: Liviu Dudau liviu.dudau@arm.com Acked-by: Matthias Brugger matthias.bgg@gmail.com Acked-by: Michal Simek michal.simek@xilinx.com Acked-by: Scott Branden scott.branden@broadcom.com Acked-by: Kevin Hilman khilman@baylibre.com Acked-by: Chunyan Zhang zhang.lyra@gmail.com Acked-by: Robert Richter rrichter@cavium.com Acked-by: Jisheng Zhang Jisheng.Zhang@synaptics.com Acked-by: Dinh Nguyen dinguyen@kernel.org
I know you are importing this commit from Linux, but these Ack lines look weird to me...
Signed-off-by: Rob Herring robh@kernel.org Signed-off-by: Arnd Bergmann arnd@arndb.de Signed-off-by: Michal Simek michal.simek@xilinx.com
arch/arm/dts/zynqmp.dtsi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/dts/zynqmp.dtsi b/arch/arm/dts/zynqmp.dtsi index b453941baf05..8646c4c3a340 100644 --- a/arch/arm/dts/zynqmp.dtsi +++ b/arch/arm/dts/zynqmp.dtsi @@ -25,7 +25,7 @@ #size-cells = <0>;
cpu0: cpu@0 {
compatible = "arm,cortex-a53", "arm,armv8";
compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; operating-points-v2 = <&cpu_opp_table>;
@@ -34,7 +34,7 @@ };
cpu1: cpu@1 {
compatible = "arm,cortex-a53", "arm,armv8";
compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; reg = <0x1>;
@@ -43,7 +43,7 @@ };
cpu2: cpu@2 {
compatible = "arm,cortex-a53", "arm,armv8";
compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; reg = <0x2>;
@@ -52,7 +52,7 @@ };
cpu3: cpu@3 {
compatible = "arm,cortex-a53", "arm,armv8";
compatible = "arm,cortex-a53"; device_type = "cpu"; enable-method = "psci"; reg = <0x3>;
-- 2.24.0

On 10. 01. 20 16:36, Masahiro Yamada wrote:
On Thu, Jan 9, 2020 at 11:19 PM Michal Simek michal.simek@xilinx.com wrote:
From: Rob Herring robh@kernel.org
The 'arm,armv8' compatible string is only for software models. It adds little value otherwise and is inconsistently used as a fallback on some platforms. Remove it from those platforms.
This fixes warnings generated by the DT schema.
Reported-by: Michal Simek michal.simek@xilinx.com Cc: Mark Rutland mark.rutland@arm.com Cc: Will Deacon will.deacon@arm.com Acked-by: Antoine Tenart antoine.tenart@bootlin.com Acked-by: Nishanth Menon nm@ti.com Acked-by: Maxime Ripard maxime.ripard@bootlin.com Acked-by: Manivannan Sadhasivam manivannan.sadhasivam@linaro.org Acked-by: Chanho Min chanho.min@lge.com Acked-by: Krzysztof Kozlowski krzk@kernel.org Acked-by: Masahiro Yamada yamada.masahiro@socionext.com Acked-by: Gregory CLEMENT gregory.clement@bootlin.com Acked-by: Thierry Reding treding@nvidia.com Acked-by: Heiko Stuebner heiko@sntech.de Acked-by: Simon Horman horms+renesas@verge.net.au Acked-by: Tero Kristo t-kristo@ti.com Acked-by: Wei Xu xuwei5@hisilicon.com Acked-by: Liviu Dudau liviu.dudau@arm.com Acked-by: Matthias Brugger matthias.bgg@gmail.com Acked-by: Michal Simek michal.simek@xilinx.com Acked-by: Scott Branden scott.branden@broadcom.com Acked-by: Kevin Hilman khilman@baylibre.com Acked-by: Chunyan Zhang zhang.lyra@gmail.com Acked-by: Robert Richter rrichter@cavium.com Acked-by: Jisheng Zhang Jisheng.Zhang@synaptics.com Acked-by: Dinh Nguyen dinguyen@kernel.org
I know you are importing this commit from Linux, but these Ack lines look weird to me...
I have not a problem to remove them but not sure if this is the right thing to do.
Thanks, Michal

s/_/-/ for node names.
It fixes warnings like this: ... Warning (node_name_chars_strict): /cpu_opp_table: Character '_' not recommended in node name ...
Issues reported by make dtbs W=12
Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp-clk.dtsi | 4 ++-- arch/arm/dts/zynqmp-zcu100-revC.dts | 4 ++-- arch/arm/dts/zynqmp-zcu102-revA.dts | 10 +++++----- arch/arm/dts/zynqmp-zcu106-revA.dts | 2 +- arch/arm/dts/zynqmp-zcu111-revA.dts | 2 +- arch/arm/dts/zynqmp.dtsi | 4 ++-- 6 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/arch/arm/dts/zynqmp-clk.dtsi b/arch/arm/dts/zynqmp-clk.dtsi index 9ef55ad0d18e..c9464ec8eb27 100644 --- a/arch/arm/dts/zynqmp-clk.dtsi +++ b/arch/arm/dts/zynqmp-clk.dtsi @@ -61,13 +61,13 @@ clock-accuracy = <100>; };
- dpdma_clk: dpdma_clk { + dpdma_clk: dpdma-clk { compatible = "fixed-clock"; #clock-cells = <0x0>; clock-frequency = <533000000>; };
- drm_clock: drm_clock { + drm_clock: drm-clock { compatible = "fixed-clock"; #clock-cells = <0x0>; clock-frequency = <262750000>; diff --git a/arch/arm/dts/zynqmp-zcu100-revC.dts b/arch/arm/dts/zynqmp-zcu100-revC.dts index 106b56b66222..02573a1f3294 100644 --- a/arch/arm/dts/zynqmp-zcu100-revC.dts +++ b/arch/arm/dts/zynqmp-zcu100-revC.dts @@ -95,7 +95,7 @@ linux,default-trigger = "bluetooth-power"; };
- vbus_det { /* U5 USB5744 VBUS detection via MIO25 */ + vbus-det { /* U5 USB5744 VBUS detection via MIO25 */ label = "vbus_det"; gpios = <&gpio 25 GPIO_ACTIVE_HIGH>; default-state = "on"; @@ -120,7 +120,7 @@ regulator-boot-on; };
- sdio_pwrseq: sdio_pwrseq { + sdio_pwrseq: sdio-pwrseq { compatible = "mmc-pwrseq-simple"; reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */ }; diff --git a/arch/arm/dts/zynqmp-zcu102-revA.dts b/arch/arm/dts/zynqmp-zcu102-revA.dts index 78110c490e8d..7d2f59b88c6f 100644 --- a/arch/arm/dts/zynqmp-zcu102-revA.dts +++ b/arch/arm/dts/zynqmp-zcu102-revA.dts @@ -58,7 +58,7 @@
leds { compatible = "gpio-leds"; - heartbeat_led { + heartbeat-led { label = "heartbeat"; gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; @@ -213,25 +213,25 @@ gpio-line-names = "PS_GTR_LAN_SEL0", "PS_GTR_LAN_SEL1", "PS_GTR_LAN_SEL2", "PS_GTR_LAN_SEL3", "PCI_CLK_DIR_SEL", "IIC_MUX_RESET_B", "GEM3_EXP_RESET_B", "", "", "", "", "", "", "", "", ""; - gtr_sel0 { + gtr-sel0 { gpio-hog; gpios = <0 0>; output-low; /* PCIE = 0, DP = 1 */ line-name = "sel0"; }; - gtr_sel1 { + gtr-sel1 { gpio-hog; gpios = <1 0>; output-high; /* PCIE = 0, DP = 1 */ line-name = "sel1"; }; - gtr_sel2 { + gtr-sel2 { gpio-hog; gpios = <2 0>; output-high; /* PCIE = 0, USB0 = 1 */ line-name = "sel2"; }; - gtr_sel3 { + gtr-sel3 { gpio-hog; gpios = <3 0>; output-high; /* PCIE = 0, SATA = 1 */ diff --git a/arch/arm/dts/zynqmp-zcu106-revA.dts b/arch/arm/dts/zynqmp-zcu106-revA.dts index 7c73ff283e7a..6faac956848b 100644 --- a/arch/arm/dts/zynqmp-zcu106-revA.dts +++ b/arch/arm/dts/zynqmp-zcu106-revA.dts @@ -58,7 +58,7 @@
leds { compatible = "gpio-leds"; - heartbeat_led { + heartbeat-led { label = "heartbeat"; gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; diff --git a/arch/arm/dts/zynqmp-zcu111-revA.dts b/arch/arm/dts/zynqmp-zcu111-revA.dts index ca95d7e059a8..5b648ceb2df6 100644 --- a/arch/arm/dts/zynqmp-zcu111-revA.dts +++ b/arch/arm/dts/zynqmp-zcu111-revA.dts @@ -58,7 +58,7 @@
leds { compatible = "gpio-leds"; - heartbeat_led { + heartbeat-led { label = "heartbeat"; gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; diff --git a/arch/arm/dts/zynqmp.dtsi b/arch/arm/dts/zynqmp.dtsi index 8646c4c3a340..232fd0c11cd7 100644 --- a/arch/arm/dts/zynqmp.dtsi +++ b/arch/arm/dts/zynqmp.dtsi @@ -74,7 +74,7 @@ }; };
- cpu_opp_table: cpu_opp_table { + cpu_opp_table: cpu-opp-table { compatible = "operating-points-v2"; opp-shared; opp00 { @@ -252,7 +252,7 @@ }; };
- amba_apu: amba_apu@0 { + amba_apu: amba-apu@0 { compatible = "simple-bus"; #address-cells = <2>; #size-cells = <1>;

From: Jan Kiszka jan.kiszka@siemens.com
Somewhere along recent changes to power control of the wl1831, power-on became very unreliable on the Ultra96, failing like this:
wl1271_sdio: probe of mmc2:0001:1 failed with error -16 wl1271_sdio: probe of mmc2:0001:2 failed with error -16
After playing with some dt parameters and comparing to other users of this chip, it turned out we need some power-on delay to make things stable again. In contrast to those other users which define 200 ms, Ultra96 is already happy with 10 ms.
Fixes: 5869ba0653b9 ("arm64: zynqmp: Add support for Xilinx zcu100-revC") Signed-off-by: Jan Kiszka jan.kiszka@siemens.com Acked-by: Ulf Hansson ulf.hansson@linaro.org Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp-zcu100-revC.dts | 1 + 1 file changed, 1 insertion(+)
diff --git a/arch/arm/dts/zynqmp-zcu100-revC.dts b/arch/arm/dts/zynqmp-zcu100-revC.dts index 02573a1f3294..986f50cf323d 100644 --- a/arch/arm/dts/zynqmp-zcu100-revC.dts +++ b/arch/arm/dts/zynqmp-zcu100-revC.dts @@ -123,6 +123,7 @@ sdio_pwrseq: sdio-pwrseq { compatible = "mmc-pwrseq-simple"; reset-gpios = <&gpio 7 GPIO_ACTIVE_LOW>; /* WIFI_EN */ + post-power-on-delay-ms = <10>; };
ina226 {

From: Sudeep Holla sudeep.holla@arm.com
Most of the legacy "gpio-key,wakeup" boolean property is already replaced with "wakeup-source". However few occurrences of old property has popped up again, probably from the remnants in downstream trees.
This patch replaces the legacy properties with the unified "wakeup-source" property introduced by: "Input: gpio_keys - switch to using generic device properties" (sha1: 700a38b27eefc582099fdf69effacfad0ad738a4)
Cc: Michal Simek michal.simek@xilinx.com Signed-off-by: Sudeep Holla sudeep.holla@arm.com Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp-zcu100-revC.dts | 2 +- arch/arm/dts/zynqmp-zcu102-revA.dts | 2 +- arch/arm/dts/zynqmp-zcu106-revA.dts | 2 +- arch/arm/dts/zynqmp-zcu111-revA.dts | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/dts/zynqmp-zcu100-revC.dts b/arch/arm/dts/zynqmp-zcu100-revC.dts index 986f50cf323d..21118c8cc34a 100644 --- a/arch/arm/dts/zynqmp-zcu100-revC.dts +++ b/arch/arm/dts/zynqmp-zcu100-revC.dts @@ -53,7 +53,7 @@ label = "sw4"; gpios = <&gpio 23 GPIO_ACTIVE_LOW>; linux,code = <KEY_POWER>; - gpio-key,wakeup; + wakeup-source; autorepeat; }; }; diff --git a/arch/arm/dts/zynqmp-zcu102-revA.dts b/arch/arm/dts/zynqmp-zcu102-revA.dts index 7d2f59b88c6f..b580f9263d02 100644 --- a/arch/arm/dts/zynqmp-zcu102-revA.dts +++ b/arch/arm/dts/zynqmp-zcu102-revA.dts @@ -51,7 +51,7 @@ label = "sw19"; gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; linux,code = <KEY_DOWN>; - gpio-key,wakeup; + wakeup-source; autorepeat; }; }; diff --git a/arch/arm/dts/zynqmp-zcu106-revA.dts b/arch/arm/dts/zynqmp-zcu106-revA.dts index 6faac956848b..d31982fce784 100644 --- a/arch/arm/dts/zynqmp-zcu106-revA.dts +++ b/arch/arm/dts/zynqmp-zcu106-revA.dts @@ -51,7 +51,7 @@ label = "sw19"; gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; linux,code = <KEY_DOWN>; - gpio-key,wakeup; + wakeup-source; autorepeat; }; }; diff --git a/arch/arm/dts/zynqmp-zcu111-revA.dts b/arch/arm/dts/zynqmp-zcu111-revA.dts index 5b648ceb2df6..bff224f78d1d 100644 --- a/arch/arm/dts/zynqmp-zcu111-revA.dts +++ b/arch/arm/dts/zynqmp-zcu111-revA.dts @@ -51,7 +51,7 @@ label = "sw19"; gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; linux,code = <KEY_DOWN>; - gpio-key,wakeup; + wakeup-source; autorepeat; }; };

Sync location with mainline kernel. Added by Linux kernel commit 75926f07baae ("arm64: dts: zynqmp: Add missing gpio-controller to ps gpio").
Fixes: 0b33e0b15600 ("arm64: zynqmp: Add missing gpio property to dtsi") Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/dts/zynqmp.dtsi b/arch/arm/dts/zynqmp.dtsi index 232fd0c11cd7..9e7fae83f787 100644 --- a/arch/arm/dts/zynqmp.dtsi +++ b/arch/arm/dts/zynqmp.dtsi @@ -626,12 +626,12 @@ compatible = "xlnx,zynqmp-gpio-1.0"; status = "disabled"; #gpio-cells = <0x2>; + gpio-controller; interrupt-parent = <&gic>; interrupts = <0 16 4>; interrupt-controller; #interrupt-cells = <2>; reg = <0x0 0xff0a0000 0x0 0x1000>; - gpio-controller; power-domains = <&zynqmp_firmware PD_GPIO>; };

Just fixing indentation and update year in Copyright.
Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynqmp-clk-ccf.dtsi | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-)
diff --git a/arch/arm/dts/zynqmp-clk-ccf.dtsi b/arch/arm/dts/zynqmp-clk-ccf.dtsi index 998298cc9bee..8eacd22d7cda 100644 --- a/arch/arm/dts/zynqmp-clk-ccf.dtsi +++ b/arch/arm/dts/zynqmp-clk-ccf.dtsi @@ -2,7 +2,7 @@ /* * Clock specification for Xilinx ZynqMP * - * (C) Copyright 2017, Xilinx, Inc. + * (C) Copyright 2017 - 2019, Xilinx, Inc. * * Michal Simek michal.simek@xilinx.com */ @@ -173,26 +173,30 @@ };
&gem0 { - clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM0_REF>, <&zynqmp_clk GEM0_TX>, - <&zynqmp_clk GEM0_RX>, <&zynqmp_clk GEM_TSU>; + clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM0_REF>, + <&zynqmp_clk GEM0_TX>, <&zynqmp_clk GEM0_RX>, + <&zynqmp_clk GEM_TSU>; clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk"; };
&gem1 { - clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_REF>, <&zynqmp_clk GEM1_TX>, - <&zynqmp_clk GEM1_RX>, <&zynqmp_clk GEM_TSU>; + clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_REF>, + <&zynqmp_clk GEM1_TX>, <&zynqmp_clk GEM1_RX>, + <&zynqmp_clk GEM_TSU>; clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk"; };
&gem2 { - clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM2_REF>, <&zynqmp_clk GEM2_TX>, - <&zynqmp_clk GEM2_RX>, <&zynqmp_clk GEM_TSU>; + clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM2_REF>, + <&zynqmp_clk GEM2_TX>, <&zynqmp_clk GEM2_RX>, + <&zynqmp_clk GEM_TSU>; clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk"; };
&gem3 { - clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM3_REF>, <&zynqmp_clk GEM3_TX>, - <&zynqmp_clk GEM3_RX>, <&zynqmp_clk GEM_TSU>; + clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM3_REF>, + <&zynqmp_clk GEM3_TX>, <&zynqmp_clk GEM3_RX>, + <&zynqmp_clk GEM_TSU>; clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk"; };

From: Zumeng Chen zumeng.chen@windriver.com
This patch is to build the coresight topology structure of zynq-7000 series according to the docs of coresight and userguide of zynq-7000.
Signed-off-by: Zumeng Chen zumeng.chen@windriver.com Signed-off-by: Quanyang Wang quanyang.wang@windriver.com Reviewed-by: Mathieu Poirier mathieu.poirier@linaro.org Signed-off-by: Michal Simek michal.simek@xilinx.com ---
arch/arm/dts/zynq-7000.dtsi | 135 ++++++++++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+)
diff --git a/arch/arm/dts/zynq-7000.dtsi b/arch/arm/dts/zynq-7000.dtsi index 07dfa0d1074f..c35eb2344fa8 100644 --- a/arch/arm/dts/zynq-7000.dtsi +++ b/arch/arm/dts/zynq-7000.dtsi @@ -62,6 +62,39 @@ regulator-always-on; };
+ 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>; + #size-cells = <0>; + + /* replicator output ports */ + port@0 { + reg = <0>; + replicator_out_port0: endpoint { + remote-endpoint = <&tpiu_in_port>; + }; + }; + port@1 { + reg = <1>; + replicator_out_port1: endpoint { + remote-endpoint = <&etb_in_port>; + }; + }; + }; + in-ports { + /* replicator input port */ + port { + replicator_in_port0: endpoint { + remote-endpoint = <&funnel_out_port>; + }; + }; + }; + }; + amba: amba { u-boot,dm-pre-reloc; compatible = "simple-bus"; @@ -415,5 +448,107 @@ reg = <0xf8005000 0x1000>; timeout-sec = <10>; }; + + 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"; + in-ports { + port { + etb_in_port: endpoint { + remote-endpoint = <&replicator_out_port1>; + }; + }; + }; + }; + + 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"; + in-ports { + port { + tpiu_in_port: endpoint { + remote-endpoint = <&replicator_out_port0>; + }; + }; + }; + }; + + funnel@f8804000 { + compatible = "arm,coresight-static-funnel", "arm,primecell"; + reg = <0xf8804000 0x1000>; + clocks = <&clkc 27>, <&clkc 46>, <&clkc 47>; + clock-names = "apb_pclk", "dbg_trc", "dbg_apb"; + + /* funnel output ports */ + out-ports { + port { + funnel_out_port: endpoint { + remote-endpoint = + <&replicator_in_port0>; + }; + }; + }; + + in-ports { + #address-cells = <1>; + #size-cells = <0>; + + /* funnel input ports */ + port@0 { + reg = <0>; + funnel0_in_port0: endpoint { + remote-endpoint = <&ptm0_out_port>; + }; + }; + + port@1 { + reg = <1>; + funnel0_in_port1: endpoint { + remote-endpoint = <&ptm1_out_port>; + }; + }; + + port@2 { + reg = <2>; + funnel0_in_port2: endpoint { + }; + }; + /* The other input ports are not connect to anything */ + }; + }; + + 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"; + cpu = <&cpu0>; + out-ports { + port { + ptm0_out_port: endpoint { + remote-endpoint = <&funnel0_in_port0>; + }; + }; + }; + }; + + 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"; + cpu = <&cpu1>; + out-ports { + port { + ptm1_out_port: endpoint { + remote-endpoint = <&funnel0_in_port1>; + }; + }; + }; + }; }; };

On 09. 01. 20 15:18, Michal Simek wrote:
Hi,
I am sending some patches to fix bugs we found in xilinx release cycle. Also do some syncs to keep kernel/u-boot dts in pseudo sync.
Thanks, Michal
Jan Kiszka (1): arm64: dts: zcu100-revC: Give wifi some time after power-on
Michal Simek (4): arm64: zynqmp: Remove incorrect phy from DT for zcu102-revB up arm64: dts: zynqmp: Fix node names which contain "_" arm64: zynqmp: Sync gpio-controller name location arm64: zynqmp: Sync gem clock nodes with mainline Linux
Rob Herring (1): arm64: dts: Remove inconsistent use of 'arm,armv8' compatible string
Sudeep Holla (1): arm64: dts: zynqmp: replace gpio-key,wakeup with wakeup-source property
Zumeng Chen (1): ARM: dts: zynq: enablement of coresight topology
arch/arm/dts/zynq-7000.dtsi | 135 ++++++++++++++++++++++++++++ arch/arm/dts/zynqmp-clk-ccf.dtsi | 22 +++-- arch/arm/dts/zynqmp-clk.dtsi | 4 +- arch/arm/dts/zynqmp-zcu100-revC.dts | 7 +- arch/arm/dts/zynqmp-zcu102-revA.dts | 12 +-- arch/arm/dts/zynqmp-zcu102-revB.dts | 2 +- arch/arm/dts/zynqmp-zcu106-revA.dts | 4 +- arch/arm/dts/zynqmp-zcu111-revA.dts | 4 +- arch/arm/dts/zynqmp.dtsi | 14 +-- 9 files changed, 172 insertions(+), 32 deletions(-)
Apply all. M
participants (3)
-
Masahiro Yamada
-
Michal Simek
-
Michal Simek