Hi,
In general it should be possible to cross compile both the linux kernel and the matching version of perf on your Ubuntu host before copying them to the DB410. Note that the version of perf running on the DB410c does not need OpenCSD as it is used to capture trace only.
On Fri, 3 Sept 2021 at 12:52, Farzam Dorostkar farzam.dorostkar@polymtl.ca wrote:
Hello everyone,
I'm interested in using CoreSight on a DragonBoard 410c. My preference is to perform trace acquisition and decoding using perf tools. I successfully cross-compiled the Linaro Linux release 21.03 [1] and built a boot image with CoreSight components enabled. Then I tried to figure out trace decoding, which I prefer to perform on a host machine. I successfully compiled OpenCSD on my Ubuntu host using the instructions in [2], but I got errors when I tried to compile perf with OpenCSD.
You do not mention what errors you are getting here. Please ensure that you "make install" OpenCSD after you have built it on your host to ensure that the perf built process will correctly pick it up.
Then I moved to the other option that was trace decoding on the board. I successfully compiled OpenCSD on my DragonBoard 410c. Since the free space on the eMMC is less than the size of the kernel source, I stored the kernel source on a MicroSD card and tried to compile perf within the MicroSD. But I got the following error in both cases of trying to compile perf with OpenCSD (make -C tools/perf VF=1 CORESIGHT=1) or compiling it standalone (make -C tools/perf):
linaro@linaro-alip:/media/linaro/mymicrosd/kernel$ make -C tools/perf VF=1 CORESIGHT=1 make: Entering directory '/media/linaro/mymicrosd/kernel/tools/perf' BUILD: Doing 'make -j4' parallel build make[1]: ./check-headers.sh: Permission denied make[1]: *** [Makefile.perf:232: sub-make] Error 127 make: *** [Makefile:70: all] Error 2 make: Leaving directory '/media/linaro/mymicrosd/kernel/tools/perf'
This looks more of an environmental error rather than one relating to openCSD.
I would not recommend building perf / decoding trace directly on the Dragonboard - as both these processes can be time consuming.
Regards
Mike
To conclude, my problem regarding trace acquisition is that I cannot compile perf on DragonBoard 410c, and my problem regarding trace decoding is that I cannot compile perf with OpenCSD either on a Ubuntu host or on the board.
Any help is greatly appreciated.
Regards, Farzam
[1] https://releases.linaro.org/96boards/dragonboard410c/linaro/debian/21.03/ [2] https://github.com/Linaro/OpenCSD/blob/master/HOWTO.md
CoreSight mailing list CoreSight@lists.linaro.org https://lists.linaro.org/mailman/listinfo/coresight