This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Trouble writing memory block while updating bootloader on ICE board

Other Parts Discussed in Thread: SYSBIOS, AM3359

Hi,

I am trying to update the bootloader on the AM335x ICE board as stated in the SYSbios industrial SDK

(V1.0.0.3) Getting Started Guide. Rebuilding the original bootloader sources worked fine and I could also start the SPI flashing tool.

When prompted I tried to download the boot.bin binary to adress 0x80100000 via CCS 5.2.0.00069 load memory function.

After some time I get the meesage: "CortxA8: Trouble Writing Memory Block at 0x80100000 on Page 0 of Length 0x6dc4: (Error -2030 @ 0xB) Internal error: Access to unknown or invalid register was requested. Restart the application. If error persists, please report the error. (Emulation package 5.0.710.0)"

I tried it several time. After the first time I did not see the bootloader start anymore (no more bootloader messages on the ICE serial console.

Any idea?

Matthias




  • I finally managed to update the bootloader!

    I installed AM335x StarterWare 2.0.0.6 and used its spi_flash_writer_AM335x.out instead of the flasher that comes with the SYSBios industrial SDK.

    This flasher does not need the bootloader image to be downloaded manually from CCS but it gets the binary by itself.

    Hm, I guess this industrial SDK SPI flasher is some of this never-tested-never-running stuff. This costed me a lot of time.

    So please let me be a little bit angry.

    Matthias

  • Hmmmm.....we've frequently used the SPI_flashing_tool.out that comes with industrial SDK 1.0.0.2 and 1.0.0.3 with CCS successfully (and I know many others have as well as you can read through the newsgroup posts).  So I'm pretty confident that it has been tested and works correctly.  Don't know why it was giving you grief: perhaps it had gotten corrupted?  Did you try re-installing the SDK to see if that fixed anything?

  • I tried it several times and even on different systems. I even like the flasher from the starterware package more: it comes with full source and you do not need to download the new flash content by hand. I even did not understand why I had to pass the image filename and (!) download the binary to the ICE' memory by hand.

    In the end I can live with the starterware flasher.

    Matthias

  • I had a similar effect... while using the SPI Flasher as advised in the SDK's Getting Started guide, the 'Load Memory' Step would always produce following error:

    Unable to terminate memory download: NULL buffer pointer at 0x3a9f 

    This happened both while flashing a EtherCAT application binary as well as with an SPI bootloader binary. 

    Using the Starterware SPI Flasher with the same procedure (does not include Load Memory step), everything seems to work well.  

  • I have a similar problem: I can download with the SPI SysBios flasher the bootloader in the ICE demo board but if I try to do the same on a custom board (with the same SPI Flash and pinout) I have the same error on Load Memory. I've tried the starterware SPI flasher in SDK but it stops with the console message:

    [CortxA8] AM335X part detected. SF: Got idcode ef 40 17
    Checking if Winbond flash writer can be used..

    I'm working with  CCS Version: 5.3.0.00090

    Any suggestions?

    Thanks in advance.

    Luca.

  • Hi Matthias!!

     It seems like you miss one step, before loading the flashing program from SYSBIOS you have load a proper ".gel" file and execute the initializiation script to get a correct access to the board memories.

    For showing the GEL files menu click on Tools->GEL Files and load a proper one.

    After loading the gel file click on Scripts and you will find the initialization script

    Scripts-> AM335x System Initialization -> AM3359_ICE_Initialization).