Article ID: 000078693 Content Type: Troubleshooting Last Reviewed: 02/12/2015

Why can’t I compile the Minimal Preloader from the SoC EDS version 14.1 with ARMCC?

Environment

  • Quartus® II Subscription Edition
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Description Due to problems in the SoC EDS 14.1 version of the minimal preloader, errors may be seen when compiling using the ARMCC tool chain.
    Resolution

    To workaround these problems follow the steps below:

    Problem 1: 

    "pinmux_config_cyclone5.c", line 241: Warning: #1-D: last line of file ends without a newline"

    Workaround:

      • Open pinmux_config_cyclone5.c  in a text editor, and add a new line / carriage return at the end of the file

    Problem:

    "<path>/sequencer.c, line 76: Error:  #79: expected a type specifier asm(".global __alt_stack_pointer");"

    Workaround:

    1. Open sequencer.c  in a text editor
    2. Add the following include to the #ifdef HPS_HW section
      #include "sdram_phy.h"
    3. Remove the following section:
      #if ARRIAV
      // Temporary workaround to place the initial stack pointer at a safe offset from end
      #define STRINGIFY(s)          STRINGIFY_STR(s)
      #define STRINGIFY_STR(s)      #s
      asm(".global __alt_stack_pointer");
      asm("__alt_stack_pointer = " STRINGIFY(STACK_POINTER));
      #endif
      if CYCLONEV
      // Temporary workaround to place the initial stack pointer at a safe offset from end
      #define STRINGIFY(s)          STRINGIFY_STR(s)
      #define STRINGIFY_STR(s)      #s
      asm(".global __alt_stack_pointer");
      asm("__alt_stack_pointer = " STRINGIFY(STACK_POINTER));
      #endif
    4. Open sequencer.h in a text editor, and remove all extern inline declarations, and put them just under the #includes in sequencer.c
    5. Save and close sequencer.c and sequencer.h

    These problems are scheduled to be fixed in a future release of SoC EDS.

     

    Related Products

    This article applies to 5 products

    Cyclone® V SE SoC FPGA
    Arria® V ST SoC FPGA
    Arria® V SX SoC FPGA
    Cyclone® V ST SoC FPGA
    Cyclone® V SX SoC FPGA