Thread (17 messages) 17 messages, 3 authors, 2014-08-25

[PATCH 09/11 v4] coresight: adding support for beagle and beagleXM

From: mathieu.poirier@linaro.org (Mathieu Poirier)
Date: 2014-08-25 14:02:45
Also in: lkml

On 24 August 2014 15:38, Marcin Jabrzyk [off-list ref] wrote:
Hi,

W dniu 20.08.2014 o 19:03, mathieu.poirier at linaro.org pisze:
quoted
From: Mathieu Poirier <mathieu.poirier@linaro.org>

Currently supporting ETM and ETB.  Support for TPIU
and SDTI are yet to be added.
Did you tried running the drivers on board or are there any special
preparation needed?
I've BeagleBoard-xM Rev. C applied your patches and enabled the
functions the in menuconfig.
But on dmesg I see that:

[    0.685028] of_amba_device_create(): amba_device_add() failed (-19)
for /etb at 5401b000
[    0.685119] of_amba_device_create(): amba_device_add() failed (-19)
for /etm at 54010000

There are no nodes according coresight in /sys/kernel/debug/ .
Right, that is because there is a problem in mainline with enabling
"emu_src_ck".  The call to "clk_prepare_enable()" returns without
waiting for the clock to effectively be enabled, preventing the
components from being discovered properly.

The work around (non-upstreamable) is to have a driver getting a hold
of the clock before AMBA devices are probed.  I can send you that code
(10 lines) if need be.
Best regards,
Marcin
quoted
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 arch/arm/boot/dts/omap3-beagle-xm.dts | 28 ++++++++++++++++++++++++++++
 arch/arm/boot/dts/omap3-beagle.dts    | 28 ++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+)
diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts
index 1becefc..eec73d8 100644
--- a/arch/arm/boot/dts/omap3-beagle-xm.dts
+++ b/arch/arm/boot/dts/omap3-beagle-xm.dts
@@ -145,6 +145,34 @@
                      };
              };
      };
+
+     etb at 5401b000 {
+             compatible = "arm,coresight-etb10", "arm,primecell";
+             reg = <0x5401b000 0x1000>;
+
+             coresight-default-sink;
+             clocks = <&emu_src_ck>;
+             clock-names = "apb_pclk";
+             port {
+                     etb_in: endpoint {
+                             slave-mode;
+                             remote-endpoint = <&etm_out>;
+                     };
+             };
+     };
+
+     etm at 54010000 {
+             compatible = "arm,coresight-etm3x", "arm,primecell";
+             reg = <0x54010000 0x1000>;
+
+             clocks = <&emu_src_ck>;
+             clock-names = "apb_pclk";
+             port {
+                     etm_out: endpoint {
+                             remote-endpoint = <&etb_in>;
+                     };
+             };
+     };
 };

 &omap3_pmx_wkup {
diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts
index 3c3e6da..a151daf 100644
--- a/arch/arm/boot/dts/omap3-beagle.dts
+++ b/arch/arm/boot/dts/omap3-beagle.dts
@@ -140,6 +140,34 @@
                      };
              };
      };
+
+     etb at 540000000 {
+             compatible = "arm,coresight-etb10", "arm,primecell";
+             reg = <0x5401b000 0x1000>;
+
+             coresight-default-sink;
+             clocks = <&emu_src_ck>;
+             clock-names = "apb_pclk";
+             port {
+                     etb_in: endpoint {
+                             slave-mode;
+                             remote-endpoint = <&etm_out>;
+                     };
+             };
+     };
+
+     etm at 54010000 {
+             compatible = "arm,coresight-etm3x", "arm,primecell";
+             reg = <0x54010000 0x1000>;
+
+             clocks = <&emu_src_ck>;
+             clock-names = "apb_pclk";
+             port {
+                     etm_out: endpoint {
+                             remote-endpoint = <&etb_in>;
+                     };
+             };
+     };
 };

 &omap3_pmx_wkup {
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help