[SOLVED]CFI not working after unlock sectors

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

  • [SOLVED]CFI not working after unlock sectors

    Hi,

    I bought two board with an arm7tdi.

    When i started my experiments was possible to read the flash (unsupported) EON EN29LV320AB trought the cfi. When i tried to unlock the
    sectors, just only unlock, some thing gone wrong and the cfi has stopped to work. To be sure about my operations i tried with the second identical board with the same results.

    Now, forcing the setting with a similar memory type and disabling the check on the manufacturer and flash id, i can read the memory. Unfortunately is not possible to unlock and erase the flash to rewrite it.

    I tried to put different flash address in the settings , but no one permit to have the cfi working.

    This is the result with the flash autodetection:


    Connecting ...
    - Connecting via USB to J-Link device 0
    - J-Link firmware: V1.20 (J-Link compiled Feb 20 2006 18:20:20 -- Update --)
    - JTAG speed: 2666 kHz (Auto)
    - Initializing CPU core (Init sequence) ...
    - Executing Reset (0, 0 ms)
    - Initialized successfully
    - JTAG speed: 2666 kHz (Auto)
    - J-Link found 1 JTAG device. Core ID: 0x1F0F0F0F (ARM7)
    - Reading CFI info ...
    - Could not find CFI compliant flash device
    - Detecting flash memory ...
    - ERROR: Could not find any flash devices
    - ERROR: Failed to connect

    Any help is appreciate

    Regards
    Gof.
  • Hi Gof,

    did you ensure that the external bus interface (EBI) of the device you are using, is configured correctly?
    Since, as long as the device is CFI-conform/compatible and the EBI is configured correctly, J-Flash should be able to auto detect the device.


    Best regards
    Alex
    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.
  • After a night with many tests (a real bruteforce), i think to have found a solution.

    When i connect the device, the program will write in the flash/sdram register to init it.

    Now i have :



    - Connecting ...
    - Connecting via USB to J-Link device 0
    - J-Link firmware: V1.20 (J-Link compiled Feb 20 2006 18:20:20 -- Update --)
    - JTAG speed: 5 kHz (Fixed)
    - Initializing CPU core (Init sequence) ...
    - Executing Reset (0, 0 ms)
    - Executing Write 32bit (0x0D000004, 0x00000073)
    - Executing Write 32bit (0x0D00000C, 0x00000071)
    - Executing Write 32bit (0x0D000008, 0x00000002)
    - Executing Write 32bit (0x0D000010, 0x00000003)
    - Executing Write 32bit (0x0D000014, 0x00000840)
    - Executing Write 32bit (0x0D000020, 0x00000001)
    - Executing Write 32bit (0x0D000018, 0x000000C0)
    - Executing Write 32bit (0x0D000010, 0x00000000)
    - Initialized successfully
    - JTAG speed: 1000 kHz (Fixed)
    - J-Link found 1 JTAG device. Core ID: 0x1F0F0F0F (ARM7)
    - Reading CFI info ...
    - Found CFI compliant flash device
    - 2 block regions
    - 8 sectors with 8 KB
    - 63 sectors with 64 KB
    - Flash ID (Chip 0) = 0x7F22F9
    - Matching flash chip found: "Eon EN29LV320AB"
    - CFI info read successfully
    - Connected successfully

    But the strange thing is that in the begining it work without any init.

    Now i have a doubt.... why if i set the physical flash address ( 0x04000000 ) the program say:


    - Reading CFI info ...
    - Could not find CFI compliant flash device
    - Detecting flash memory ...
    - Flash ID (Chip 0) = 0x19F02860
    - Flash memory detected successfully

    but if i use a different address it found the flash?


    I tried to add my flash in your cvs. Can be good this ?

    Eon;EN29LV320AB;7F22F9;7F00F9;0;1;0;16;1;0;0;0;0;0;0;0;0;0;0;0;0;"2000[8]; 10000[63];"

    ( i tried it and appear to work )


    Many tnx for the nice support.

    Regards
    Gof.
  • I found the solution to my problems. I lose many days because this china guy are very poor (like my english :P ).

    This board has a little flash encryption. If i not enable a flag , when i read the memory it is broken.

    So, tnx again for the help ;)
    Gof.