Hi Leo,
Busybox gives the same results:
root@linaro-developer:~# busybox devmem 0x00800000
[ 1713.501755] Synchronous External Abort: synchronous external abort (0x92000010) at 0x0000007fbb6eb000
How this clock can be enabled? I though it is already enabled. I used default configuration for db410c and it includes the msm8916.dtsi file.
Regards
Marek
W dniu 2017-10-02 12:02:55 użytkownik Leo Yan <leo.yan(a)linaro.org> napisał:
> On Mon, Oct 02, 2017 at 11:15:27AM +0200, marekzmyslowski wrote:
> > Hello,
> >
> > I'm trying to get access to Qualcomm Debug Subsystem on my DragonBoard 410c by using the mmap. Just want to read data available in DQSS_DAPROM. However when I try to do that, the system is rebooting. Any idea why I can't do that?
> >
> > int size = 4096;
> > off_t addr_to_map = 0x00800000; //according to docs this is an address of QDSS_DAPROM
> >
> > int mem_fd = open("/dev/mem", O_RDWR);
> > localv = mmap(0, size, PROT_READ, MAP_SHARED, mem_fd, addr_to_map);
> > printf ("mmap completed %p.\n", localv);
> > tab = (unsigned int *)localv;
> > printf ("%u\n", tab[0]);
> >
> > Result of my application execution:
> > mmap completed 0x7fa29f0000.[ 484.585864] Synchronous External Abort: synchronous external abort (0x92000010) at 0x0000007fa29f0000
>
> Seems this external exception relate with clock, so need enable
> RPM_QDSS_CLK clock firstly?
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arc…
>
> Thanks,
> Leo Yan
>
Good day all,
As discussed in the meeting yesterday I have started a new gitHub
repository [1] to host the perf-opencsd kernel. Right now it has all
the same kernel branches as found on the openCSD repository. I have
also added a small wiki that gives people a little bit of information
on the repository itself. Note that the openCSD repository hasn't
been modified yet and that *everything* in the perf-opencsd is
currently considered experimental. I am sharing this early to give
people a chance to comment on the structure, naming and whatever they
want to see modified.
Regards,
Mathieu
[1]. https://github.com/Linaro/perf-opencsd
Hi,
This patchset adds support for user space decoding of CoreSight traces [1]
of the ARM architecture. Kernel support for configuring CoreSight tracers
and collect the hardware trace data in the auxtrace section of the
perf.data file is already integrated [2]. The user space implementation
mirrors to a large degree that of the Intel Processor Trace (PT) [3]
implementation, except that the decoder library itself is separate from the
perf tool sources, and is built and maintained as a separate open source
project [4]. Instead, this patch set includes the necessary code and build
settings to interfaces to the decoder library, as well as a "stub" or "null"
library for the case when the perf tool is built without the library.
The decoder library interface code in this patch set only supports ETMv4
trace decoding, though the library itself supports a broader range. Future
patches will add support for more versions of the ARM ETM trace encoding.
Changes from v2:
Changed patch sequence to enable packet dump (-D or --dump-raw-trace
option) first. Then build up to full packet decode. Also added functions
to the trace decoder library interface as they are referenced by the
functions in the main coresight processing file and combined them in those
patches.
Changes from v3:
Introduced functions in cs-etm-decoder.c at the same time they are
referenced in cs-etm.c, and not waiting until the very end to change the
build script to compile the full decoder library interface.
Changes from v4:
Removed function to directly read vmlinux file text section, instead
relying on perf dso access functions.
Changes from v5:
Refactored cs-etm-decoder-stub.c so that the different parts are
introduced when the corresponding parts in cs-etm-decoder.c are added.
Changed error returns in cs-etm-decoder.c to use enums as opposed to
literals.
Changed handling of how memory access function is added to decoder
library. Now, instead of adding for each MMAP2 entry and the kernel only
one entry is added for the entire address space. The functionality is
equivalent to the previous, except the code is simpler.
Changes from v6:
Removed stub library, instead replaced by conditionally using a static
inline function in cs-etm.h when the decoder library is not available.
Tor Jeremiassen (22):
perf tools: Add initial hooks for decoding coresight traces
perf tools: Add processing of coresight metadata
perf tools: Add coresight trace decoder library interface
perf tools: Add data block processing function
perf tools: Add etmv4i packet printing capability
perf tools: Add decoder new and free
perf tools: Add trace packet print for dump_trace option
perf tools: Add code to process the auxtrace perf event
perf tools: Add function to read data from dsos
perf tools: Add mapping from cpu to cs_etm_queue
perf tools: Add functions to allocate and free queues
perf tools: Add functions to setup and initialize queues
perf tools: Add functions to allocate and free queues
perf tools: Add function to get trace data from aux buffer
perf tools: Add function to run the trace decoder and process samples
perf tools: Add functions to process queues and run the trace decoder
perf tools: Add perf event processing
perf tools: Add processing of queues when events are flushed
perf tools: Add synth_events and supporting functions
perf tools: Add function to clear the decoder packet buffer
perf tools: Add functions for full etmv4i packet decode
MAINTAINERS: Adding entry for CoreSight trace decoding
MAINTAINERS | 3 +-
tools/perf/Makefile.config | 26 +
tools/perf/util/Build | 6 +
tools/perf/util/auxtrace.c | 2 +
tools/perf/util/cs-etm-decoder/Build | 2 +
tools/perf/util/cs-etm-decoder/cs-etm-decoder.c | 526 ++++++++++
tools/perf/util/cs-etm-decoder/cs-etm-decoder.h | 133 +++
tools/perf/util/cs-etm.c | 1179 +++++++++++++++++++++++
tools/perf/util/cs-etm.h | 50 +
9 files changed, 1926 insertions(+), 1 deletion(-)
create mode 100644 tools/perf/util/cs-etm-decoder/Build
create mode 100644 tools/perf/util/cs-etm-decoder/cs-etm-decoder.c
create mode 100644 tools/perf/util/cs-etm-decoder/cs-etm-decoder.h
create mode 100644 tools/perf/util/cs-etm.c
--
2.7.4
These two patches generated a fair amount of discussion on the mailing
list when they were sent and as such I didn't apply them.
But from what I understand people use them when doing autoFDO testing.
They may not be perfect but at least provide a base for discussion and
further improvement.
My intention is to add them to the perf-opencsd-master branch for the
4.14 cycle. If anyone is categorically against it please get back
to me with convincing arguments.
Best regards,
Mathieu
Sebastian Pop (2):
perf inject: correct recording of branch address and destination
perf inject: record branches in chronological order
tools/perf/util/cs-etm-decoder/cs-etm-decoder.c | 12 +++
tools/perf/util/cs-etm-decoder/cs-etm-decoder.h | 1 +
tools/perf/util/cs-etm.c | 136 ++++++++++++++----------
3 files changed, 95 insertions(+), 54 deletions(-)
--
2.7.4
Great. Thank you.
Regards
Marek
W dniu 2017-09-14 23:45:51 użytkownik Mathieu Poirier <mathieu.poirier(a)linaro.org> napisał:
> On 14 September 2017 at 15:24, marekzmyslowski
> <marekzmyslowski(a)poczta.onet.pl> wrote:
> > Hello Mike,
> >
> > Thank you. I will try to use it. One more question if I may. Where do you get userdata/rootfs - for example something like this
> https://github.com/96boards/documentation/blob/master/ConsumerEdition/Drago…
> ?
>
>
> I'm not sure about what you need here... The user space I run can be
> found here [1] but it seems you've already found that page...
>
> Mathieu
>
> [1]. https://96boards.org/documentation/ConsumerEdition/DragonBoard-410c/Downloa…
>
>
>
> >
> > Regards
> > Marek
> >
> > W dniu 2017-09-14 18:13:26 użytkownik Mike Leach <mike.leach(a)linaro.org> napisał:
> >> Hi,
> >>
> >> I've attached the .config I am using to debug coresight drivers on
> >> DB410c - used to build the opencsd-perf-4.13 kernel tree in the
> >> OpenCSD github project.
> >> The .dtb to use is apq8016-sbc.dtb
> >>
> >> Regards
> >>
> >> Mike
> >>
> >> On 14 September 2017 at 09:31, marekzmyslowski
> >> <marekzmyslowski(a)poczta.onet.pl> wrote:
> >> > Hi,
> >> >
> >> > I'm trying to build kernel for the DragonBoard 410c to use the CoreSight. What config should I used (default for the qcom) and what dtb file is related to that board?
> >> >
> >> > Regards
> >> > Marek
> >> > _______________________________________________
> >> > CoreSight mailing list
> >> > CoreSight(a)lists.linaro.org
> >> > https://lists.linaro.org/mailman/listinfo/coresight
> >>
> >>
> >>
> >> --
> >> Mike Leach
> >> Principal Engineer, ARM Ltd.
> >> Blackburn Design Centre. UK
> >>
> >
> >
> >
> > _______________________________________________
> > CoreSight mailing list
> > CoreSight(a)lists.linaro.org
> > https://lists.linaro.org/mailman/listinfo/coresight
>
Hello Mike,
Thank you. I will try to use it. One more question if I may. Where do you get userdata/rootfs - for example something like this https://github.com/96boards/documentation/blob/master/ConsumerEdition/Drago… ?
Regards
Marek
W dniu 2017-09-14 18:13:26 użytkownik Mike Leach <mike.leach(a)linaro.org> napisał:
> Hi,
>
> I've attached the .config I am using to debug coresight drivers on
> DB410c - used to build the opencsd-perf-4.13 kernel tree in the
> OpenCSD github project.
> The .dtb to use is apq8016-sbc.dtb
>
> Regards
>
> Mike
>
> On 14 September 2017 at 09:31, marekzmyslowski
> <marekzmyslowski(a)poczta.onet.pl> wrote:
> > Hi,
> >
> > I'm trying to build kernel for the DragonBoard 410c to use the CoreSight. What config should I used (default for the qcom) and what dtb file is related to that board?
> >
> > Regards
> > Marek
> > _______________________________________________
> > CoreSight mailing list
> > CoreSight(a)lists.linaro.org
> > https://lists.linaro.org/mailman/listinfo/coresight
>
>
>
> --
> Mike Leach
> Principal Engineer, ARM Ltd.
> Blackburn Design Centre. UK
>
Hi,
I'm trying to build kernel for the DragonBoard 410c to use the CoreSight. What config should I used (default for the qcom) and what dtb file is related to that board?
Regards
Marek
On 26 July 2017 at 09:38, Etemadi, Mohammad <mohammad.etemadi(a)intel.com> wrote:
> Hello Mathieu, Mike
>
>
Good day,
>
> I have a few questions about perf and decoder road maps and bug fixes. Here
> is a list of issues that
>
> I have found out. I like to know if these are known problems and what is the
> process to get them resolved.
>
>
>
> 1) Snapshot mode (option –S) does not work. Ideally we need to run perf
> record with options –a and –S
>
> to trace in snapshot mode on all the cores
That shouldn't be hard to fix - I'll open a card for this.
>
>
>
> 2) Perf record with option –C also does not work. We want, in some cases,
> limit the trace to a subset of cores
I've been trying to fix this for a while but have failed completely.
To address the issue I don't see any other way than to change the perf
ABI between user and kernel space, something that has been rejected by
the community in no uncertain terms. I will sit down with Peter Z. at
Linux Plumbers in September to see how best to move forward.
This is very high on my list of priorities. It is also the first step
in supporting a multi-sink topology.
>
>
>
> 3) Time and cycle information is in the raw trace but perf decoder cannot
> decode it
That one is for Mike. It will also require modifications to the perf tools.
>
>
>
> Thanks for all your help.
Any time,
Mathieu
>
>
>
> Regards, Reza