[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] uClinux for Digilent XUPV2P board boot from flash



Hello Haofeng Kou,

My colleague just asked John Williams about the same thing, and here is the answer. Please note, that we are working on a Insight Memec Spartan3 S3MB1500 evaluation board rev. 2. The files attached probably wont't work for You, but the way to do it should be similar:


*********** John Wrote ************

Here are the steps you should do to boot from flash.

0. Setup your Linux PC as a TFTP server, as per instructions here:
http://www.linuxhomenetworking.com/linux-hn/xinetd.htm#_Toc57733791

Make sure the /tftpboot directory is exported by the TFTP server.  By
default, the uClinux build process copies the kernel image into /tftpboot.

1.  Edit the file uClinux-dist/linux-2.4.x/drivers/mtd/maps/mb_auto.c

line 45, change to "#define BUS_WIDTH 2"

2. rebuild the linux kernel (make dep all)

3. Inflate the attached bootloader.tar.gz archive from inside your
s3mb1500 EDK project directory.

4. Add the bootloader as a software project in XPS, and set it to
initialse the BRAMs with the bootloader program.  You can just use the
attached system.xmp project file if you wish, it has the project already
added.

5. Rebuild the bitstream, and download to the board.

6. Using XMD, download the new kernel image in "normal" way, "dow -data
etc", into DDR, and boot the kernel.

7. When MicroBlaze boots, connect it to the network, set your IP address
and all that.

8. Use the netflash command to pull the kernel image from the tftp
server, to the microblaze, like this:

$ netflash server.ip.address.here image.bin

It should download the image, and write it into flash.

9.  Reboot the board (or reconfigure the FPGA).  This time, the
bootlaoder will copy the kernel image from flash, and boot uClinux
automatically.

You can use netflash any time you want to save a new kernel image on the
flash.


*********** John Wrote End ************

Files attached origin from John too :-)



Greetings, Sigi



Haofeng Kou wrote:

I have succeed boot up the uClinux on the Digilent XUPV2P
board(MicroBlaze core), it is using the bootloop and the XMD to
download the Linux image and bootup. Now I want to burn the uClinux
image(kernel+fs) into the flash and boot it directly from the flash.
If you already done the similar work, could you please share some info
here by replying this email?

Thanks!

___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/



#Please do not modify this file by hand
XmpVersion: 7.1
IntStyle: default
MHS File: system.mhs
MSS File: system.mss
NPL File: projnav/system.ise
Architecture: spartan3
Device: xc3s1500
Package: fg676
SpeedGrade: -4
UseProjNav: 0
AddToNPL: 0
PNImportBitFile: 
PNImportBmmFile: 
UserCmd1: 
UserCmd1Type: 0
UserCmd2: 
UserCmd2Type: 0
SynProj: xst
ReloadPbde: 0
MainMhsEditor: 0
InsertNoPads: 0
HdlLang: VHDL
Simulator: mti
SimModel: BEHAVIORAL
SimXLib: 
SimEdkLib: 
MixLangSim: 1
UcfFile: data/system.ucf
ICacheAddr: DDR_SDRAM_16Mx16,C_MEM0_BASEADDR
ICacheAddr: DDR_SDRAM_16Mx16,C_MEM0_BASEADDR
Processor: microblaze_0
BootLoop: 0
XmdStub: 0
SwProj: TestApp_Memory
Processor: microblaze_0
Executable: TestApp_Memory/executable.elf
Source: TestApp_Memory/src/TestApp_Memory.c
DefaultInit: EXECUTABLE
InitBram: 0
Active: 1
CompilerOptLevel: 2
GlobPtrOpt: 0
DebugSym: 1
AsmOpt: 
LinkOpt: 
ProgStart: 
StackSize: 
HeapSize: 
LinkerScript: TestApp_Memory/src/TestApp_Memory_LinkScr
ProgCCFlags: 
SwProj: TestApp_Peripheral
Processor: microblaze_0
Executable: TestApp_Peripheral/executable.elf
Source: TestApp_Peripheral/src/TestApp_Peripheral.c
Source: TestApp_Peripheral/src/xuartlite_selftest_example.c
Source: TestApp_Peripheral/src/xemac_polled_example.c
DefaultInit: EXECUTABLE
InitBram: 0
Active: 1
CompilerOptLevel: 2
GlobPtrOpt: 0
DebugSym: 1
AsmOpt: 
LinkOpt: 
ProgStart: 
StackSize: 
HeapSize: 
LinkerScript: TestApp_Peripheral/src/TestApp_Peripheral_LinkScr
ProgCCFlags: 
SwProj: bootloader
Processor: microblaze_0
Executable: bootloader/executable.elf
Source: bootloader/bootloader.c
Source: bootloader/flash.c
Header: bootloader/flash.h
DefaultInit: executable
InitBram: 1
Active: 1
CompilerOptLevel: 2
GlobPtrOpt: 0
DebugSym: 1
AsmOpt: 
LinkOpt: 
ProgStart: 
StackSize: 
HeapSize: 
LinkerScript: 
ProgCCFlags: 

Attachment: bootloader.tar.gz
Description: application/compressed