Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12604 Discussions

Syntax error in alt_sys_init.c ???

Altera_Forum
Honored Contributor II
1,266 Views

Hi, 

 

I am using the cycloneIII and I am desperately trying to run a simple "hello world" on a two-cores system.  

I picked up the NEEK and I added a second proccessor(called E1), some on-chip RAM and two mailboxes. The second processor is only linked with the mailboxes, the memories (sdram,ssram,onchip-ram and flash), see attached file. The second processor does just a while(1) and the main processor a printf("hello from niosII")... 

I have already used the original NEEK successfully, but with the new two-cores system, I get an error during compiling the project of the second processor: 

 

--- Quote Start ---  

 

system_description/alt_sys_init.c error: syntax error before '&' token mailbox_test_CPUE1 line 93 1254317195848 760 

system_description/alt_sys_init.c error: syntax error before '&' token mailbox_test_CPUE1 line 94 1254317195848 763 

system_description/alt_sys_init.c error: syntax error before '&' token mailbox_test_CPUE1_syslib line 93 1254317180279 749 

system_description/alt_sys_init.c error: syntax error before '&' token mailbox_test_CPUE1_syslib line 94 1254317180279 752 

system_description/alt_sys_init.c error: syntax error before '==' token mailbox_test_CPUE1 line 92 1254317195848 758 

system_description/alt_sys_init.c error: syntax error before '==' token mailbox_test_CPUE1_syslib line 92 1254317180279 747 

system_description/alt_sys_init.c error: syntax error before "else" mailbox_test_CPUE1 line 92 1254317195848 759 

system_description/alt_sys_init.c error: syntax error before "else" mailbox_test_CPUE1_syslib line 92 1254317180279 748 

 

--- Quote End ---  

I took a look at the concerned paragraph, and the errors come from: 

 

--- Quote Start ---  

ALTERA_AVALON_SGDMA_INIT( LCD_SGDMA, lcd_sgdma ); 

ALTERA_AVALON_MAILBOX_INIT( MAILBOX_E1, mailbox_e1 ); 

ALTERA_AVALON_MAILBOX_INIT( MAILBOX_O, mailbox_o ); 

--- Quote End ---  

which I guess are macros. 

 

I tried to program and run the main processor (from the neek) alone and - besides that I had to use an external terminal from the command shell to display the printf("hello from niosII") - it was successful only when I put the .stack in the ssram (it failed in the sdram)... 

 

So, I think these points are consequences of a more global problem, and some help or clues would be very appreciated. 

 

Thank you
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
438 Views

Check the include files to make sure there are no extra lines in the macro. i.e. stuff like this: 

# define IMAMACRO  

 

some code  

 

some more code  

 

etc....  

 

I forget how this happened to me last time but it has to do with the conversion of windows to linux ... or the other way around line feeds. For me I think it was the include files in the /app folder that caused it. By the way which version of the design are you using? Is it the one that came on the CD?
0 Kudos
Altera_Forum
Honored Contributor II
438 Views

Hi, 

I am using the 9.0 version. 

I am not quite sure about what you are talking, but I saw some lines in the macro in alt_avalon_sgdma.h : 

 

--- Quote Start ---  

/* 

* The macro ALTERA_AVALON_SGDMA_INIT is called by the auto-generated function 

* alt_sys_init() to initialize a given device instance. 

*/ 

# define ALTERA_AVALON_SGDMA_INIT(name, dev)  

if (name##_IRQ == ALT_IRQ_NOT_CONNECTED)  

{  

ALT_LINK_ERROR ("Error: Interrupt not connected for "# dev ". "  

"The Altera Avalon Scatter-Gather DMA driver requires "  

"that an interrupt is connected. Please select an IRQ "  

"for this device in SOPC builder.");  

}  

else  

{  

alt_avalon_sgdma_init(&dev, name##_IRQ);  

 

--- Quote End ---  

The problem is that these header files are automatically generated during the syslib building...so I should not modify these files.  

I am wondering if the problem comes from bad hardware in SOPC builder or from bad parameter/option in nios IDE... 

thank you for helping me!
0 Kudos
Altera_Forum
Honored Contributor II
438 Views

Actually when I saw this issue I think it was the 'driver code' that lives in the application folder. I can't remember which one it was but it was most likely either the I2C or video pipeline drivers that caused the issue for me. As a result I would see all kinds of errors during compilation that wouldn't even suggest that they were the problem mainly because it was the code after these macros that would error out. These drivers I'm referring to have their own directories in the application directory.

0 Kudos
Reply