Forum Discussion
Altera_Forum
Honored Contributor
15 years ago --- Quote Start --- I've followed the instruction provided by http://www.alterawiki.com/w/index.php?title=creating_a_nios_ii_design_with_an_mmu&oldid=1864 I've created a custom board for my DE2 FPGA dev. board. After make menuconfig, I tried to ' make ', but failed with the following errors/ warnings: In file included from /usr/local/src/nios2-linux/linux-2.6/include/linux/sched.h:57, from /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:12: /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: warning: "SYS_CLK_TIMER_FREQ" is not defined /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/include/linux/jiffies.h:257:31: error: division by zero in# if /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c: In function 'main': /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:122: error: 'DDR_SDRAM_BASE' undeclared (first use in this function) /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:122: error: (Each undeclared identifier is reported only once /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:122: error: for each function it appears in.) /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:123: error: 'DDR_SDRAM_SPAN' undeclared (first use in this function) /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:134: error: 'KERNEL_REGION_BASE' undeclared (first use in this function) /usr/local/src/nios2-linux/linux-2.6/arch/nios2/kernel/asm-offsets.c:136: error: 'FAST_TLB_MISS_EXCEPTION_ADDR' undeclared (first use in this function) make[3]: *** [arch/nios2/kernel/asm-offsets.s] Error 1 make[2]: *** [prepare0] Error 2 make[1]: *** [sub-make] Error 2 make[1]: Leaving directory `/usr/local/src/nios2-linux/linux-2.6' make: *** [linux] Error 1 Anyone has idea? Thx! --- Quote End --- Those instructions are severely out of date unfortunately. I just recently annoyed the email list to get it explained to me. I've promised to update the instructions as soon as I get my design working but that has not happened yet. Here's the short version... The good news is the parts about the TLB setup are still accurate. But the method to get your board supported is much different. After you build your design, open a nios terminal in the directory where your .sopcinfo file is. Execute the command "sopc-create-header files --single custom_fpga.h". This will create a file with all your addresses in it. Transfer that file to the linux-2.6/arch/nios/include/asm directory, over writing the old custom_fpga.h. In the make menuconfig, you need to select the "NIOSII board configuration" menu and make sure that (Nios Embedded Evaluation Kit) is selected for the board configuration and (Custom_FPGA) is selected for the FPGA configuration. That should get you to a booting kernel. I'm still struggling with Ethernet myself, there are some driver weirdnesses like you have to have your DMA addresses spaced at least 0x400 apart because of the memory allocations issues. Good luck. David