Zynq : Manual debugging of an RTEMS demo
Chris Johns
chrisj at rtems.org
Thu Mar 31 21:30:54 UTC 2016
On 1/04/2016 2:04 AM, Badr El Hiouel wrote:
> I didn't get the printk working ..
Check the UART clock matches your hardware build, ie the system block in
the Xilinx hardware tool. There is a BSP_OPT. Check the configure.ac in
the BSP's top directory for the exact name. Add the BSP_OPT to your
configure command line.
The flexibility of what you can do with a Zynq makes things like clock
speeds in RTEMS source code difficult to manage. We have to have a clock
freq in the code and it will be wrong for some and will work for others.
> So, I looked for a new way for debuggin
> and finaly I got the Xilinx sdk debug the .elf. And when debugging it
> doesn't stop in the same line as the fist method ( XMD+gdb). But the
> problem of this , is when arriving to newlibc_exit.c the debugger stops and
> show me the error :
>
> Can't find a source file at
> "/mnt/D/dev/rtems/rtems-source-builder/rtems/build/arm-rtems4.12-gcc-6-20160228-newlib-2.3.0.20160226-x86_64-linux-gnu-1/build/arm-rtems4.12/thumb/armv7-a/neon/hard/newlib/libc/misc/../../../../../../../../../gcc-6-20160228/newlib/libc/misc/fini.c"
> Locate the file or edit the source lookup path to include its location.
>
> I searched for this file and I couldn't find it.
>
The RSB kindly cleans up for you after the build finishes. A simple
trick is to add '--no-clean' to the RSB set builder command and the full
source for libgcc and newlib will be available. You will then be able to
step around those libraries with full source code.
> I'm looking also to the openOCD way of debugging .. Maybe I'll get the
> adaptor from Avnet to try this, I'm just afraid to face the same problem.
Maybe, if it is a bug in the set up of the board it will still be there.
I can help more with OpenOCD than I can with the Xilinx tools. There are
more things to get sorted with OpenOCD, such as the patches need if they
have not been merged from their Gerrit tool, and your board's set up
script but once working it should be stable for the remainder of your
project.
Plus I would hack the RTEMS code and add a printk some where you know
the code gets to and get that working. You will need to do this at some
point in time.
Chris
More information about the users
mailing list