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

1