Sign In

Don't have a Xilinx account yet?

  • Choose to receive important news and product information
  • Gain access to special content
  • Personalize your web experience on Xilinx.com

Create Account

Username

Password

Forgot your password?
XClose Panel
Xilinx Home
Reply
Regular Contributor
mariano_severi
Posts: 56
Registered: ‎09-15-2008
0
Accepted Solution

MicroBlaze and OpenSourceLinux : failed to download ELF file

Hi

I'm a newbie to Linux. I'm trying to run the Xilinx Open Source Linux for MicroBlaze on ML405. I followed the step described on the wiki page. Please find attached the mhs and mss files of the project and the device-tree generated by EDK.

I've selected the "Platform options" in the kernel configuration and I've set the Physical Addres where Linux is at the base address of the DDR processor memory (0x80000000); I also changed all the other parameters according to the hardware configuration. Then I successfully build the kernel.

Anyway, when I try to download the image, xmd displays that all the sections are located starting from 0xc0000000 which is of course not accessible from processor I-side interface; so image is not downloaded. Please can somebody help me?

Regards

 Mariano

Xilinx Employee
toneal
Posts: 227
Registered: ‎12-17-2007

Re: MicroBlaze and OpenSourceLinux : failed to download ELF file

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

 

> xmd

 

%XMD> conncect mb mdm

%XMD> dow simpleImage.... 

 

See if that gets you any further.. 

Expert Contributor
linnj
Posts: 1,038
Registered: ‎09-10-2008
0

Re: MicroBlaze and OpenSourceLinux : failed to download ELF file

What you're seeing in XMD is normal with the C000 0000 address. If you use obdjump to dump the headers (-h) you'll see that there are physical and virtual addresses for the eolf file and the physical address will match your memory (hopefully).

 

Did XMD give you an error or you just thought it was not right?

 

You should be able to run the kernel.  I pasted in one of my xmd sessions below to illustrate what I mean.

 

Thanks.

 

 

 

MicroBlaze Processor Configuration :
-------------------------------------
Version............................7.20.d
Optimization.......................Performance
Interconnect.......................PLBv46
MMU Type...........................Full_MMU
No of PC Breakpoints...............1
No of Read Addr/Data Watchpoints...0
No of Write Addr/Data Watchpoints..0
Instruction Cache Support..........on
Instruction Cache Base Address.....0x50000000
Instruction Cache High Address.....0x5fffffff
Data Cache Support.................on
Data Cache Base Address............0x50000000
Data Cache High Address............0x5fffffff
Exceptions  Support................on
FPU  Support.......................off
Hard Divider Support...............off
Hard Multiplier Support............on - (Mul32)
Barrel Shifter Support.............off
MSR clr/set Instruction Support....on
Compare Instruction Support........on
Data Cache Write-back Support......off

Connected to "mb" target. id = 0
Starting GDB server for "mb" target (id = 0) at TCP port no 1234
System Reset .... DONE
Downloading Program -- linuxkernel
 section, .text: 0xc0000000-0xc029a7b7
 section, .ref.text: 0xc029a7b8-0xc029b4df
 section, .init.text: 0xc0354000-0xc03720df
 section, .init.ivt: 0xc03751ec-0xc0375253
 section, __fdt_blob: 0xc029b4e0-0xc029f4df
 section, .rodata: 0xc02a0000-0xc032a75f
 section, __ksymtab: 0xc032a760-0xc032e78f
 section, __ksymtab_gpl: 0xc032e790-0xc03301d7
 section, __ksymtab_strings: 0xc03301d8-0xc033c312
 section, __param: 0xc033c314-0xc033cfff
 section, __ex_table: 0xc033d000-0xc033dd9f
 section, .sdata2: 0xc033dda0-0xc033dfff
 section, .data: 0xc033e000-0xc0352fff
 section, .init.data: 0xc03720e0-0xc03751eb
 section, .init.setup: 0xc0375254-0xc03754f3
 section, .initcall.init: 0xc03754f4-0xc0375717
 section, .con_initcall.init: 0xc0375718-0xc037571f
 section, .init.ramfs: 0xc0376000-0xc0376203
 section, .bss: 0xc0377000-0xc03a47f3
Setting PC with Program Start Address 0x50000000

Info:Processor started. Type "stop" to stop processor

RUNNING> test complete
test complete

John Linn
Regular Contributor
mariano_severi
Posts: 56
Registered: ‎09-15-2008
0

Re: MicroBlaze and OpenSourceLinux : failed to download ELF file

Thanks toneal,

now xmd does not report the error and the file is downloaded to memory. Unfortunately I see no boot message on the serial port; can you suggest me what I can check?

Xilinx Employee
toneal
Posts: 227
Registered: ‎12-17-2007
0

Re: MicroBlaze and OpenSourceLinux : failed to download ELF file

Regular Visitor
yxiao0308
Posts: 9
Registered: ‎02-08-2010
0

Re: MicroBlaze and OpenSourceLinux : failed to download ELF file

Hi, Mariano,

 

I think I also stuck at the same place.

 

I am trying to port 'linux-2.6-xlnx.git' obtained from git.xilinx.com to my XUPV5-LX110T board. I also follow all the steps within the page 'Microblaze Linux ' on xilinx.wikidot.com and set the  'Physical Addres where Linux is' accoring to my design but still get no output in my terminal window.

 

Did you succeed? If so, can you give me some advice?

 

Regards,

 

Yang