[SOLVED] Programming external CFI/ONFI Flash(es) on ST SPEAR600

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] Programming external CFI/ONFI Flash(es) on ST SPEAR600

    Hi,

    I need some help reading/writing the external flash chips connected to a SPEAR600.

    I have a dev. setup using an ST-Micro SPEAR600 processor, using it's JTAG interface with my J-Link. The SPEAR600 is in your supported processors list, but currently cannot program either external flash chip. The SPEAR600 has an external serial NOR interface, as well as an FSMC NAND flash interface.

    I can't seem to find the documentation anywhere on how to actually configure the FSMC, it's mentioned in the spear600 datasheet, but no info on the actual bit fields, etc.

    I'm flexible with what tools to use, currently I have IAR EWARM, but am fine using your JFLASH as well....


    Is this something you are able to help with? Have you done any scripts or project setups with the SPEAR600 before??


    (I believe the NAND interface is ONFI?)


    Thanks so much for any help you can provide!

    - Mike

    The post was edited 1 time, last by MikeFlyersFan ().

  • Hello Mike,

    Thank you for your inquiry.
    You have two options here.
    If you are using a Parallel CFI NOR flash and SPEAR 600 supports that all you need to do is tell J-Link where the Memory is located and initialize the pins for programming.
    More information can be found in the J-Link user manual (UM08001) in section "6.5 Setup for various debuggers (CFI flash)".
    To set the area command "SetCFIFlash" needs to be used.

    For all other cases our open flash loader interface can be used: wiki.segger.com/Adding_Support_for_New_Devices

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Nino,

    Thanks so much for your information, this is a great support forum, I'm really loving this J-Link device, just picked it up a few weeks ago... your software has so much more versatility than any other Jtag devices I already have.

    I realized that the SPEAR600 is really the same internally as the SPEAR300, with the exception of the 600 having the two ARM cores (versus 1 in the 300).

    ST has fixed their reference links for the SPEAR600, so now they point you to the SPEAR300 Reference manual for both MPUs. This is the doc I was looking for, as it has all the detailed bit mappings, etc for the AHB & FSMC memory controllers.

    I think I was incorrect in saying the SPEAR300/600 had CFI, their FSMC only indicates ONFI, but still behind their FSMC/AHB interface. So I will need to use the open flasher interface as you described, I can follow your example for the STM32F103...

    wiki.segger.com/Generic_IDE




    I think you can close this case, as I'm sure I can get this all working once I get the scripts and FSMC interface setup properly, thanks again for your help!

    - Mike
  • Hi Mike,

    Thank you for the flowers :)
    I think you can close this case, as I'm sure I can get this all working once I get the scripts and FSMC interface setup properly, thanks again for your help!

    You are welcome. We will consider this thread as solved now.

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.