On 08/09/2018 10:21, Jiri Gaisler wrote:
On 09/07/2018 07:47 AM, Hugues Jérôme wrote:
Thanks Sebastian and Joel, we will try your suggestions
I’ll see with partners what is feasible. I also suspect a difference
of behaviour between dmon and grmon monitors when loading the program
in memory
Note I may have been misleading somehow:
our test program with a BSS of 1MB works perfectly fine,
the exact same program, with a different set of size for our data has
a BSS of 4MB, and crashes due to an alignment error at RTEMS start up.
The second seems to point to an unexpected behavior in the code
setting the BSS
Check that the external memory is working correctly, and that grmon
has set the stack pointer to top of external SDRAM. With 1 MByte BSS,
you might be executing completely from L2 cache, so you will never
access external RAM. With 4 MByte, you will hit the external RAM and
this might lead to failures if it is not working or initialized
correctly. You might need to 'wash' the external memory before first
use if it uses external EDAC, otherwise you will get spurious EDAC
errors on byte writes. Use the wash command in grmon or similar.
Also check that the program is linked to start address that is withing
the RAM boundaries. Note that GR740 has start of SDRAM at address 0x0
while most leon2/3 systems has this at 0x40000000. A general leon3
binary will then not run properly on GR740 except when it fits in the
L2 cache.
Thanks for the hints. This turned out to be a problem in combination
with the dmon boot loader/debugger. With the grmon it works.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.hu...@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
users mailing list
users@rtems.org
http://lists.rtems.org/mailman/listinfo/users