Nios® II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
12453 Discussions

[MMU-Version] Problem booting (custom layout on DE2-70)

Altera_Forum
Honored Contributor II
756 Views

Hello Forum,  

 

I designed a modified layout based on the DE2_70_Net Demo project (added MMU and DM9000/Ethernet). 

 

Linux-Software is the latest ./update on 20100621 (I work with the included toolchain-mmu).  

 

Branches are nios2 (linux-2.6) and trunk (uClinux-dist).  

 

Compilation is based on device tree and I used the instructions on alterawiki.com/wiki/devicetree 

(jtag uart console) 

 

The sof is downloaded via nios2-configure-sof. 

 

I also managed to compile the zImage and download it via nios2-download -g path/to/zImage 

which did the following: 

Using cable "USB-Blaster [3-2]", device 1, instance 0x00 

Pausing target processor: OK 

Initializing CPU cache (if present) 

OK 

Downloaded 4046KB in 81.5s (49.6KB/s) 

Verified OK  

Starting processor at address 0xC1000000 

 

 

Then I try to get the console via nios2-terminal, which made me sad: 

andreas@igor:$ ./nios2_command_shell.sh bin/nios2-terminal 

nios2-terminal: connected to hardware target using JTAG UART on cable 

nios2-terminal: "USB-Blaster [3-2]", device 1, instance 0 

nios2-terminal: (Use the IDE stop button or Ctrl-C to terminate) 

 

Linux version 3.3.0-rc5-01280-ge385fee (andreas@igor) (gcc version 4.1.2)# 10 Wed Feb 29 15:23:43 CET 2012 

bootconsole [early0] enabled 

early_console initialized at 0xe9001040 

Linux version 3.3.0-rc5-01280-ge385fee (andreas@igor) (gcc version 4.1.2)# 10 Wed Feb 29 15:23:43 CET 2012 

bootconsole [early0] enabled 

early_console initialized at 0xe9001040 

Linux version 3.3.0-rc5-01280-ge385fee (andreas@igor) (gcc version 4.1.2)# 10 Wed Feb 29 15:23:43 CET 2012 

bootconsole [early0] enabled 

early_console initialized at 0xe9001040 

 

Unfortunately I am not that much experienced, so I don't really get the problem here.  

 

Additional information: 

- In make menuconfig I set: 

(0x00000000) Memory base address 

(0x01000000) Link address offset for booting 

 

Of course the .dts got specified, and the jtag uart console is compiled-in.  

 

Thank you very much to everyone who tries to help. If any further information is needed please let me know.  

 

Andi 

 

Here is my .dts: 

pastebin.com/Bk72RtPh 

 

Here is the sopc-builder configuration (please add http and www since I can't do it 'cause of my less than 4 postings -.-) : 

bilder-upload.eu/show.php?file=389194-1330530436.jpg
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
91 Views

Judging from your dts (the picture with your sopc info is not accessible), the problem most probably is the missing data cache: 

 

dcache-line-size = < 0 >; dcache-size = < 0 >;  

 

You will need to add some data cache for the design to work properly with Linux. Please follow the instructions http://alterawiki.com/wiki/creating_a_nios_ii_design_with_an_mmu on how to create a proper design for running Linux.
Altera_Forum
Honored Contributor II
91 Views

Thank you for your reply.  

The picture is accessible when typing h t t p : / / w w w. before the address. Sorry for this, but as already mentioned I can't do any attachments before having done 4 postings in the forum.  

 

I'll check your link. Thank you very much. 

 

EDIT: I changed the design as mentioned in tklauser's link above, and also put sdram base to 0x10000000 as shown in the tutorial. Of course, in make menuconfig I also changed the offset to 0x10000000. The result unfortunately stays the same as I already told in my first post.  

 

Perhaps anyone has another idea? 

 

Here is my new .dts content: 

pastebin.com/ZFd3ZQ2N 

 

And this is the new design (opened design on another PC that's why dm9000 shows up red): 

pic-upload.de/view-13164939/sopc.jpg.html
Altera_Forum
Honored Contributor II
91 Views

As I could still not solve the problem I want to ask if someone could provide me a working MMU-Design for DE2-70 Board, just in order I can verify that the problem is my Design and not caused by wrong linux-configuration.  

All Altera-provided DE2-70-designs are no-mmu Designs as I can determine.  

Thank you.
Altera_Forum
Honored Contributor II
91 Views

Ok, finally at least the booting process seams to be starting. It still ends in an unhandled exception but I think if necessary I should open another thread for this.  

 

I can't really say what originally caused my problem, I just downloaded the whole distribution again and did a ./update so I guess something was wrong with the settings.
Altera_Forum
Honored Contributor II
91 Views

Hi I have a similar situation and my download and verified ok, but when nios2-terminal, this is all I get 

Linux version 3.1.0-rc4-01162-g45c9dd8 (root@localhost.localdomain) (gcc version 4.1.2)# 12 Thu Jan 24 18:00:03 EST 2013 

bootconsole [early0] enabled 

early_console initialized at 0xe8000190 

(Nothing happen afterward... just hang there) 

 

My Kernel Base Address is at 0x06000000 and link base address for boot is 0x01000000. I have a slow peripheral bridge with base address 0x08000000 to 0x080003ff and my Jtag-UART.avalong_jtag_slave fall under it has base address 0x0190 to 0x0197. Is it because of the jtag-uart why it is hang? or something else... What's after uClinux does after early_console initialized? I am out of idea and hope any can help please. Thank you in advance.
Reply