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++
12599 Discussions

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

Altera_Forum
Honored Contributor II
1,040 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
375 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.
0 Kudos
Altera_Forum
Honored Contributor II
375 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
0 Kudos
Altera_Forum
Honored Contributor II
375 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.
0 Kudos
Altera_Forum
Honored Contributor II
375 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.
0 Kudos
Altera_Forum
Honored Contributor II
375 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.
0 Kudos
Reply