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

Mathieu Poirier mathieu.poirier at linaro.org
Mon Aug 25 07:02:43 PDT 2014


On 24 August 2014 15:38, Marcin Jabrzyk <marcin.jabrzyk at gmail.com> wrote:
> Hi,
>
> W dniu 20.08.2014 o 19:03, mathieu.poirier at linaro.org pisze:
>> From: Mathieu Poirier <mathieu.poirier at 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
>
>>
>> Signed-off-by: Mathieu Poirier <mathieu.poirier at 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 {
>



More information about the linux-arm-kernel mailing list