cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mamisadegh2
Observer
Observer
9,364 Views
Registered: ‎06-15-2010

Where can I download a ready initramfs image to test my system

Jump to solution

Hi

I am using Linux kernel source code from xilinx git tree and I comes up successfully on my platform.

However I have problem with the root file system and I want to know if there is any ready to use initramfs image so that I can insert it into my kernel?

 

the xilinx open source wiki says that you can download such a file there in the "files" section however, when you look inside files section there is nothing special to download.

 

I want to know if you can provide us with the image or i should make it myself?

 

regards

Mohammad Sadegh Sadri

 

0 Kudos
1 Solution

Accepted Solutions
Anonymous
Not applicable
8,541 Views

instead of invoking xmd from the xps gui, try running from the command line:

 

> xmd

 

%XMD> conncect mb mdm

%XMD> dow simpleImage.... 

 

View solution in original post

0 Kudos
15 Replies
linnj
Xilinx Employee
Xilinx Employee
9,362 Views
Registered: ‎09-10-2008

Is this powerpc or Microblaze?

0 Kudos
linnj
Xilinx Employee
Xilinx Employee
9,359 Views
Registered: ‎09-10-2008

Can you provide the exact page where you don't see what you're looking for as I don't see a problem when I look, but maybe I'm overlooking something.

 

Thanks.

0 Kudos
mamisadegh2
Observer
Observer
9,315 Views
Registered: ‎06-15-2010

Hi,

 

The exact address for the web page: http://xilinx.wikidot.com/open-source-linux

 

My target CPU is Microblaze. 

I'm using gcc from xilinx git tree.

 

0 Kudos
linnj
Xilinx Employee
Xilinx Employee
9,305 Views
Registered: ‎09-10-2008

http://xilinx.wikidot.com/microblaze-linux

 

You need to look at the Microblaze Linux page that's also available.

0 Kudos
mamisadegh2
Observer
Observer
9,260 Views
Registered: ‎06-15-2010

Hi

 

Is this initramfs image a MMU image or nonMMU?

 

 

0 Kudos
linnj
Xilinx Employee
Xilinx Employee
9,253 Views
Registered: ‎09-10-2008

It's MMU only as we don't support no MMU

 

From the wiki page at http://xilinx.wikidot.com/microblaze-linux:

 

Everything on this site assumes building a Linux Kernel with MMU only as Xilinx is not supporting the non-MMU kernel.

 

Thanks.

0 Kudos
mamisadegh2
Observer
Observer
9,243 Views
Registered: ‎06-15-2010

Hi

 

Strange!

 

then I go back to my very very old question that I never found a reasonable answer for,

 

if we have a for example MMU kernel, what is the outcome of this dommand in XMD: 

 

dow simpleImage.xilinx

 

simply it generates errors because, XMD (as EDK 11.2) does not support virtual memory address.

 

Am i correct?

 

on the other hand, you may like to use "dow -data" and then "con" and this again does not work for me.

 

so the only solution is to use u-boot, which i'm working on right now.

 

Regards

Mohammad Sadegh Sadri.

 

0 Kudos
linnj
Xilinx Employee
Xilinx Employee
9,224 Views
Registered: ‎09-10-2008

No that's not true. If you follow the instructions on the wiki about how to build and download the kernel u-boot is not required.  XMD will download the kernel without the MMU on as it gets downloaded into physical memory.

 

Please following the directions on the following page.

 

http://xilinx.wikidot.com/microblaze-linux

 

Thanks.

0 Kudos
mamisadegh2
Observer
Observer
9,185 Views
Registered: ‎06-15-2010

Dear John,

 

The above link , does not talk about enabling support for MMU in Linux at all.

 

So, if one configure the kernel using what mentioned in the above link, the kernel does not support MMU.

In this case XMD is able to load the kernel using dow command simply.

 

Now , if one person enable support for MMU in kernel configuration:

Kernel Configuration ---> Processor type and Features ---> MMU Support

 

if you enable MMU Support in kernel configuration, then XMD will no more be able to load the kernel executable. the Dow commadn generates errors.

It reports that it does not know the memory addresses specified in the executable. this is correct, because now the kernel is using MMU and all of the address values are now virtual addresses instead of physical one.

 

My question is : How do you execute and MMU kernel using XMD?

 

Regards

Mohammad Sadegh Sadri.

 

0 Kudos
zben
Adventurer
Adventurer
6,249 Views
Registered: ‎01-29-2008

I agree with linnj, this works perfectly.:

xmd> connect mb mdm
xmd> dow arch/microblaze/boot/simpleImage.ml507_mb_v1
xmd> run

 

But the base address of the system RAM must be the same in the hardware (bitstream) and in the kernel configuration.

I had the same problem the first time I try to build my own system (kernel + bitstream).

 

As I say in an other post, my advise :

- Try to use first the hardware (bitstream) already generated by Xilinx, and also the Xilinx kernel. This validate the board

- Then keep the Xilinx hardware, but put your own kernel. This validate your kernel

- Then try to generate your own hardware. This will requires to modify the kernel (mainly the address of the RAM).

I think this step by step approach is the best.

 

See this post : http://forums.xilinx.com/t5/Embedded-Linux/Microblaze-linux-how-to-create-an-initramfs/td-p/73984

 

0 Kudos
mamisadegh2
Observer
Observer
6,225 Views
Registered: ‎06-15-2010

Dear zben

 

I have solved all of my problems, my main line linux kernel now comes up without any problems and mounts the initial ram disk and then the rootfs and finally i have the shell.

 

my problem was : I had not disabled the intel keyboard driver which is only available in x86.

I have not used xilinx_mmu_defconfig and mmu_defconfig, I have performed the Linux kernel configuration process myself. And as I said every thing is now Ok.

 

My procedure for loading the linux kernel is as follows :

 

1- using XMD I load U-boot ( dow u-boot )

2- i run u-boot

3- i load the linux kernel (simpleImage.xilinx.ub) , the complied device tree and the initramfs using u-boot

4- i boot the system using bootm

 

every thing is working Ok, and i have no more problem. however, just suppose i want to load and execute the linux kernel directly :

 

As you claim, I should be able to do this using the dow command in u-boot

but it does not work. because, MMU is enabled and XMD does not understand virtual memory addresses.

 

Here is the outcome of trying to load the kernel using XMD directly:

 

XMD% dow /home/sadri/hdl/downloads/linux_microblaze/simpleImage.xilinx
System Reset .... DONE
Downloading Program -- /home/sadri/hdl/downloads/linux_microblaze/simpleImage.xilinx
        section, .text: 0xc0000000-0xc019529f
        section, .ref.text: 0xc01952a0-0xc019572b
        section, .devinit.text: 0xc019572c-0xc0195b2f
        section, .devexit.text: 0xc0195b30-0xc0195bdf
        section, .init.text: 0xc01fa000-0xc02102b7
        section, .init.ivt: 0xc0210e04-0xc0210e6b
 ERROR: Failed to download ELF file

I-Side Memory Access Check Failed
        Section, 0xc0000000-0xc019529f Not Accessible from Processor I-Side Interface

So , what is the magic here, that you can load your kernel easily using XMD and support for MMU is active for you, but I can not do it?

 

Regards

Mohammad Sadegh Sadri

 

0 Kudos
linnj
Xilinx Employee
Xilinx Employee
6,222 Views
Registered: ‎09-10-2008

It seems like you either not using the correct image of the kernel, or your h/w design is not correct.

 

I guess you could be  using some old tool set that I haven't used but I doubt that.

 

If you using objdump to dump the headers of the elf file that your loading, (-h for objdump options), you'll see that the load address is not virtual and should match your physical address space.  If that's not the case you are using wrong image (like vmlinux) or using the wrong procedure to build it.

 

Thanks.

 

 

0 Kudos
Anonymous
Not applicable
8,542 Views

instead of invoking xmd from the xps gui, try running from the command line:

 

> xmd

 

%XMD> conncect mb mdm

%XMD> dow simpleImage.... 

 

View solution in original post

0 Kudos
mamisadegh2
Observer
Observer
6,200 Views
Registered: ‎06-15-2010

:smileyhappy: You solved it toneal !

I always invoked XMD from inside XPS. now it is working.

 

0 Kudos
ltovey
Observer
Observer
5,682 Views
Registered: ‎03-01-2010

toneal,

 

Can you please explain why this works from the command line, but not from XPS?  Thanks.

0 Kudos