<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hey together!<br>
    </p>
    <p>I'm new to RTEMS and just hit some errors, I just can't figure
      out. Since I will probably lure around a bit longer, I wanted to
      give short introduction, so you can estimate what to expect from
      me: I'm a nearly-finished(tm) EE undergrad from Germany, not
      having any hands-on experience on RTOS, my embedded knowledge is
      confined to some hobby STM32/PIC projects and the usual
      microcontroller stuff they teach at uni. Not a great starting
      point for something as advanced as RTEMS, I'm aware, but I'm eager
      to learn it. Besides embedded stuff I'm also into the RF
      electronics :)<br>
      Goal of my engagement with RTEMS: Setting up a small SMP Demo
      Application on the Phytec Zeta i.MX7d Board
      <a class="moz-txt-link-freetext" href="https://www.phytec.eu/product-eu/single-board-computer/phyboard-zeta/">https://www.phytec.eu/product-eu/single-board-computer/phyboard-zeta/</a>
      for a university project, though after getting to know RTEMS, I
      hope to be able to stick around after that, the applications in
      (aero)space, are exactly what I'm passionate about! Also I hope
      after I get to run everything, I can compile and publish my
      documentation/experience to help others with the i.MX 7, since the
      road has been rather rocky for me now.<br>
    </p>
    <p><br>
    </p>
    <p>So to my actual problem: I have the before mentioned i.MX 7d
      Board and a Lauterbach Power Debug Interface with trace32, to
      directly flash my binaries onto the SRAM. I'm using their i.MX7d
      SABRE configuration file, which successfully worked with their
      sample binary and slightly modified it (mainly deactivating ETF
      on-chip tracing).</p>
    <p>I've built the RTEMS 5 toolchain according to your quick-start
      guide (
      <a class="moz-txt-link-freetext" href="https://docs.rtems.org/branches/master/user/start/index.html">https://docs.rtems.org/branches/master/user/start/index.html</a>),
      with some slight modifications arm/imx7 on my Ubuntu 18.04 VM
      (kernel built from sources, somehow didn't work otherwise). I also
      built the simplest demo application from 2.7, which went without
      problems (well, after many hours of troubleshooting stupid
      mistakes). Now after flashing the binary directly to the SRAM with
      my Lauterbach Debugger (without RTEMS OS Awareness yet), I end up
      in the exception routine "_ARMV4_Exception_data_abort_default",
      with the following call-tree-hierarchy:</p>
    <p><img src="cid:part1.11CA84A9.D7799439@posteo.de" alt=""></p>
    <p>I also tried removing the printf (just letting it count an
      integer up and overflow), since I was confused why RTEMS would
      call a uart_write function otherwise, but that didn't change
      anything and actually doesn't even get to the Init rtems_task.</p>
    <p>I already looked on the internet, the documentation and the
      mailing-list archive for help (not nearly finished reading through
      the complete Classic API Guide and User Manual, that'll take some
      time). Unfortunately I'm also new to the Lauterbach Debugger,
      which seems to be a beast of its own, so I unfortunately can't
      provide any useful on-chip trace data yet. I hope anyone can point
      me to the, probably rather obvious, mistake I'm making, any help
      is appreciated!<br>
    </p>
    <p><br>
    </p>
    <p>Last but not least, thanks for your awesome work on RTEMS!<br>
    </p>
    <p>Kind regards,<br>
      Stefan</p>
    <p><br>
    </p>
    <p>Attached some maybe useful outputs:</p>
    <p>stefan@rtems-vm:~$ arm-rtems5-gcc --version<br>
      arm-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5.1, Newlib
      7947581)<br>
      <br>
    </p>
    <p>./waf configure --rtems=$HOME/rtems/5 --rtems-bsp=arm/imx7<br>
      Setting top to                           :
      /home/stefan/VCS/rtems-bp/first-test <br>
      Setting out to                           :
      /home/stefan/VCS/rtems-bp/first-test/build <br>
      RTEMS Version                            : 5 <br>
      Architectures                            : arm-rtems5 <br>
      Board Support Package (BSP)              : arm-rtems5-imx7 <br>
      Show commands                            : no <br>
      Long commands                            : no <br>
      Checking for program 'arm-rtems5-gcc'    :
      /home/stefan/rtems/5/bin/arm-rtems5-gcc <br>
      Checking for program 'arm-rtems5-g++'    :
      /home/stefan/rtems/5/bin/arm-rtems5-g++ <br>
      Checking for program 'arm-rtems5-gcc'    :
      /home/stefan/rtems/5/bin/arm-rtems5-gcc <br>
      Checking for program 'arm-rtems5-ld'     :
      /home/stefan/rtems/5/bin/arm-rtems5-ld <br>
      Checking for program 'arm-rtems5-ar'     :
      /home/stefan/rtems/5/bin/arm-rtems5-ar <br>
      Checking for program 'arm-rtems5-nm'     :
      /home/stefan/rtems/5/bin/arm-rtems5-nm <br>
      Checking for program 'arm-rtems5-objdump' :
      /home/stefan/rtems/5/bin/arm-rtems5-objdump <br>
      Checking for program 'arm-rtems5-objcopy' :
      /home/stefan/rtems/5/bin/arm-rtems5-objcopy <br>
      Checking for program 'arm-rtems5-readelf' :
      /home/stefan/rtems/5/bin/arm-rtems5-readelf <br>
      Checking for program 'arm-rtems5-strip'   :
      /home/stefan/rtems/5/bin/arm-rtems5-strip <br>
      Checking for program 'arm-rtems5-ranlib'  :
      /home/stefan/rtems/5/bin/arm-rtems5-ranlib <br>
      Checking for program 'rtems-ld'           :
      /home/stefan/rtems/5/bin/rtems-ld <br>
      Checking for program 'rtems-tld'          :
      /home/stefan/rtems/5/bin/rtems-tld <br>
      Checking for program 'rtems-syms'         :
      /home/stefan/rtems/5/bin/rtems-syms <br>
      Checking for program 'rtems-bin2c'        :
      /home/stefan/rtems/5/bin/rtems-bin2c <br>
      Checking for program 'tar'                : /bin/tar <br>
      Checking for program 'gcc, cc'            :
      /home/stefan/rtems/5/bin/arm-rtems5-gcc <br>
      Checking for program 'ar'                 :
      /home/stefan/rtems/5/bin/arm-rtems5-ar <br>
      Checking for program 'g++, c++'           :
      /home/stefan/rtems/5/bin/arm-rtems5-g++ <br>
      Checking for program 'ar'                 :
      /home/stefan/rtems/5/bin/arm-rtems5-ar <br>
      Checking for program 'gas, gcc'           :
      /home/stefan/rtems/5/bin/arm-rtems5-gcc <br>
      Checking for program 'ar'                 :
      /home/stefan/rtems/5/bin/arm-rtems5-ar <br>
      Checking for c flags '-MMD'               : yes <br>
      Checking for cxx flags '-MMD'             : yes <br>
      Compiler version (arm-rtems5-gcc)         : 7.5.0 20191114 (RTEMS
      5, RSB 5.1, Newlib 7947581) <br>
      Checking for a valid RTEMS BSP installation : yes <br>
      Checking for RTEMS_DEBUG                    : no <br>
      Checking for RTEMS_MULTIPROCESSING          : no <br>
      Checking for RTEMS_NEWLIB                   : yes <br>
      Checking for RTEMS_POSIX_API                : yes <br>
      Checking for RTEMS_SMP                      : no <br>
      Checking for RTEMS_NETWORKING               : yes <br>
      'configure' finished successfully (1.056s)<br>
    </p>
  </body>
</html>