Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

Flash Programmer--MMU

Hi,

I have red some posts about Flash-Programmer and the explanation of nioswiki, but I continue having some doubts about it.

I have the DE2-70 FPGA with uClinux-MMU. I would like to program the EPCS flash with the .sof file and the CFI flash with zimage file. My custon_fpga.h has these adresses:

ext_flash base=0x08800000 end=0x08ffffff

epcs_controller base=0x09403800 end=0x09403fff

My reset_vector and exception_vector are in flash.

My doubts are relationed to this post: http://www.alteraforum.com/forum/showthread.php?t=22035&highlight=flash

It is commented to do some changes if you use uClinux with MMU:

For elf2flash:

--base =Base address of flash, + 0xc0000000

--end = End address of flash, + 0xc0000000

--reset =End address of flash, + 0xc0000000

nios2-flash-programmer:

--base = Base address of flash. Add the --mmu option, but do NOT add an offset to this address.

My questions are:

Do I also have to add these offsets in custom_fpga.h or is it only necessary in these commands?

Do I have to add this offset( 0xc0000000) in the command sof2flash for the EPCS?

I don't know where to add --mmu option, could it be this place?

nios2-flash-programmer --mmu --base=0x08800000 ext_flash.flash

Many thanks and thank you in advance

2 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Do I also have to add these offsets in custom_fpga.h or is it only necessary in these commands?

    --- Quote End ---

    Don't modify custom_fpga.h, just use the correct addresses in the commands. Drivers will use the addresses in custom_fpga.h and ioremap() them as appropriate.

    --- Quote Start ---

    Do I have to add this offset( 0xc0000000) in the command sof2flash for the EPCS?

    --- Quote End ---

    I don't know much about programming EPCS, but this is what I do to program in the FPGA configuration image:

    sof2flash --activeparallel --offset=0x20000 --input=/data/nios/myfpga.sof --output=myfpga.flash
    nios2-flash-programmer --base=0xe4000000 myfpga.flash --instance 1

    My guess is for EPCS you just replace --activeparallel with --epcs

    --- Quote Start ---

    I don't know where to add --mmu option, could it be this place?

    nios2-flash-programmer --mmu --base=0x08800000 ext_flash.flash

    --- Quote End ---

    That looks right.