• Visit https://www.embeddedcomputers.net/ for Hardware; Software and all other things related to FlashcatUSB

Spansion S29GS128 over BCM96358

Excellent. You seem to have the 32KB version.

Please test this version: www.embededdcomputers.net/BC_TEST3.zip

This is to check to make sure it selects the correct chip, and also the correct bus. I have a suspicion your device is actually 8-bit, not 16-bit. Which may also fix the writing problem.
 
all FF with the very last one
can I try to write, cause maybe is really all FF in the flash
 
I tried again flashing just the CFE part, and after 1 error it write ok later.
The router now do something, turns on all leds and auto restart every 2 minutes, so it near to work properly.

Code:
LibUsbDotNet version: 2.2.8.104
BlackcatUSB Script Engine running, build: 150
Welcome to Blackcat USB interfacing software, build: 281
Running on: Microsoft Windows XP Professional (32 bit)
Initializing EJTAG engine
Device connected in JTAG mode: 6,03
Engine setup successfully
Detected CPU ID: 0x635817F IMP CODE: 0x818904
Manufacturer ID: 0xBF Part ID: 0x6358
EJTAG Version support: 2.0
Target device supports DMA mode
Checking for a device specific script
Loading script: default.bcs
Setting device parameter (AMD Flash delay) to 0xFA
Setting device parameter (Memory Read Delay) to 0xFA
Script file (default.bcs) unloaded
Loading script: HG556a.bcs
Manufacture ID: 0x01 Part: 0x00227E
Detected Spansion S29GL Family, ID: 0x7E2101
Flash device detected: Spansion S29GL128 (16.777.216 bytes)
Located at memory address: 0x1F000000
Programming mode: AMD (8 bit)
Setting device parameter (AMD Flash delay) to 0x1F4
Address 0x92E: wrote 0x0 and read 0xFF (6 mismatches)
Write Flash operation complete
131072 bytes written in 5,435 seconds, 24.116 Bytes/s
 
no luck trying to full flash

Code:
LibUsbDotNet version: 2.2.8.104
BlackcatUSB Script Engine running, build: 150
Welcome to Blackcat USB interfacing software, build: 281
Running on: Microsoft Windows XP Professional (32 bit)
Initializing EJTAG engine
Device connected in JTAG mode: 6,03
Engine setup successfully
Detected CPU ID: 0x635817F IMP CODE: 0x818904
Manufacturer ID: 0xBF Part ID: 0x6358
EJTAG Version support: 2.0
Target device supports DMA mode
Checking for a device specific script
Loading script: default.bcs
Setting device parameter (AMD Flash delay) to 0xFA
Setting device parameter (Memory Read Delay) to 0xFA
Script file (default.bcs) unloaded
Loading script: HG556a.bcs
Manufacture ID: 0x01 Part: 0x00227E
Detected Spansion S29GL Family, ID: 0x7E2101
Flash device detected: Spansion S29GL128 (16.777.216 bytes)
Located at memory address: 0x1F000000
Programming mode: AMD (8 bit)
Setting device parameter (AMD Flash delay) to 0x1F4
Address 0x92E: wrote 0x0 and read 0xFF (6 mismatches)
Write Flash operation complete
131072 bytes written in 5,435 seconds, 24.116 Bytes/s
Address 0x0: wrote 0x10 and read 0xFF (66324 mismatches)
Address 0x0: wrote 0x10 and read 0xFF (66324 mismatches)
Address 0x0: wrote 0x10 and read 0xFF (66324 mismatches)
Error: data verification at 0x0 failed!
Address 0x20000: wrote 0x38 and read 0xFF (130576 mismatches)
Address 0x20000: wrote 0x38 and read 0xFF (130576 mismatches)
Address 0x20000: wrote 0x38 and read 0xFF (130576 mismatches)
Error: data verification at 0x20000 failed!
 
Okay, so the software and avr firmware works for your flash. However, what is happening is the device you are using is constantly resetting itself. Bascially the CPU is trying to run the code on the flash, and thus, will crash (causing the write error) and will reset, repeating the process.

So one thing you can try, is to you try and "lock" or "halt" the CPU prior to programming.

Try this console command: Ejctrl(0x10000)

Then try to do a FULL flash write. I would also recommend you uncheck "verify data", so that it will try and write all the data at once without trying to put the device into read mode.
 
Hello,
I´m going to try, while try I want to ask you two questions:
1. can I write the command in the script this way:
Code:
# Script file for Huawei HG556a
 
MyDevice = "NHuawei HG556a"    #Name of device
JTAG.MemoryAddress(0x0)
JTAG.MemoryType("RAM")
JTAG.MemorySize(0x1f00000)
CFGMEM = JTAG.MemoryInit()
JTAG.MemoryAddress(0x1f000000)
JTAG.MemoryType("CFI")
CFGFLASH = JTAG.MemoryInit()
Ejctrl(0x10000)

and second question is if I don´t use the trst of the jtag will help with the resets issue?

thx in davance and best regards
 
Back
Top