TJTAG 3.0.2 Released + Custom/Mod CFE

Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC based Hardware
Goto page Previous  1, 2
Author Message
tsmith35
DD-WRT Novice


Joined: 16 Feb 2012
Posts: 4

PostPosted: Wed Sep 19, 2012 2:43    Post subject: Reply with quote
Maybe this would help?
Sponsor
ktmoldman
DD-WRT Novice


Joined: 12 Oct 2012
Posts: 1

PostPosted: Fri Oct 12, 2012 19:43    Post subject: Will EJTAG v3.0 work with a TIAO USB Adapter Reply with quote
I just downloaded the EJTAG v3.0 software and I have the TIAO USB Multi-Protocol Adapter
http://www.dd-wrt.com/phpBB2/profile_sec.php?mode=activate&u=265077&act_key=96a0e513e7
loaded and operational (all drivers).
I cannot detect the CPU using the tjtag3 -probeonly
command. I've double checked the cables and nothing.
I have a NetGear WNR3500 router (Model N300) with the
Broadcom BCM4718A chip.

Will the EJTAG software work with this TIAO USB Adapter?
brisk
DD-WRT Novice


Joined: 10 Nov 2006
Posts: 14

PostPosted: Wed Oct 17, 2012 23:41    Post subject: Re: Will EJTAG v3.0 work with a TIAO USB Adapter Reply with quote
try zjtag...

ktmoldman wrote:
I just downloaded the EJTAG v3.0 software and I have the TIAO USB Multi-Protocol Adapter
http://www.dd-wrt.com/phpBB2/profile_sec.php?mode=activate&u=265077&act_key=96a0e513e7
loaded and operational (all drivers).
I cannot detect the CPU using the tjtag3 -probeonly
command. I've double checked the cables and nothing.
I have a NetGear WNR3500 router (Model N300) with the
Broadcom BCM4718A chip.

Will the EJTAG software work with this TIAO USB Adapter?
viktor
DD-WRT Novice


Joined: 02 May 2011
Posts: 2

PostPosted: Sat Nov 10, 2012 6:10    Post subject: Reply with quote
Recovery tool for BCM6348 based DSL routers. This SoC have a bizzare bug, that prevents entering CPU debug mode via jtag, if ADSL controller inside BCM is not initialized (if you compile the original firmware without DSL driver, you are also not be able to enter debug). This tool completly bypass CPU, and access flash via jtag boundary scan,so you may flash CFE directly on board. But for this, you must put out 64Mhz crystall to stop CPU core before. I tested this tool on DSL-2640RU Rev B2 router, but with MX29LV160 flash. I have'nt native 32Mbit flash.

Maybe Tornado merge this tool with tjtag ?



cf3.rar
 Description:

Download
 Filename:  cf3.rar
 Filesize:  143.94 KB
 Downloaded:  1824 Time(s)

W1SS
DD-WRT Novice


Joined: 11 Nov 2012
Posts: 13

PostPosted: Mon Nov 12, 2012 6:32    Post subject: support for S29GL256P10TF101 Spansion chip Reply with quote
Hi Tornado

I downloaded tjtag 3.0.2 yesterday and noticed that it was missing support for Flash Chip = Spansion S29GL256P10TF101 147FF092 C

Notice Message: *** Unknown or NO Flash Chip Detected ***

What are my options to debricking my RT-N66U?

Thanks
Wiss
socal87
DD-WRT Guru


Joined: 30 Jun 2009
Posts: 944
Location: Here

PostPosted: Mon Dec 17, 2012 6:17    Post subject: Re: support for S29GL256P10TF101 Spansion chip Reply with quote
W1SS wrote:
Hi Tornado

I downloaded tjtag 3.0.2 yesterday and noticed that it was missing support for Flash Chip = Spansion S29GL256P10TF101 147FF092 C

Notice Message: *** Unknown or NO Flash Chip Detected ***

What are my options to debricking my RT-N66U?

Thanks
Wiss


There are a few of us waiting for an answer to this as well...many of us have already made donations...

_________________
Click here for Eko beta
Click here for Brainslayer beta

>>>PEACOCK THREAD!<<<

I do NOT offer personal assistance.
Please do not PM me for help.

W1SS
DD-WRT Novice


Joined: 11 Nov 2012
Posts: 13

PostPosted: Fri Dec 21, 2012 15:56    Post subject: Reply with quote
I've come up with a workaround for non-supported flash chips, at least for spansion chips; could work for other chips too.

After going through the source code of several jtag software, I noticed that the flash regions for cfe, nvram, kernel etc., are identical across the jtag software I analyzed, ie:

Code:

//---------   ----------     -----------  ------------
  //chip_size   area_name      area_start   area_length
  //                             offset
  //---------   ----------     -----------  ------------
  { size1MB,    "CFE",         0x00000000,  0x40000 },
  { size2MB,    "CFE",         0x00000000,  0x40000 },
  { size4MB,    "CFE",         0x00000000,  0x40000 },
  { size8MB,    "CFE",         0x00000000,  0x40000 },
  { size16MB,   "CFE",         0x00000000,  0x40000 },
  // for tiny CFE
  { size1MB,    "TFE",         0x00000000,  0x10000 },
  { size2MB,    "TFE",         0x00000000,  0x10000 },    //Tiny CFE usually for BCM ADSL device
  { size4MB,    "TFE",         0x00000000,  0x10000 },    //keep at least 64KB in size,
  { size8MB,    "TFE",         0x00000000,  0x10000 },    //Tiny CFE also need keep 1 bottom flash sector size.
  { size16MB,   "TFE",         0x00000000,  0x10000 },   

  { size1MB,    "KERNEL",      0x00040000,  0x0B0000 },
  { size2MB,    "KERNEL",      0x00040000,  0x1B0000 },
  { size4MB,    "KERNEL",      0x00040000,  0x3B0000 },
  { size8MB,    "KERNEL",      0x00040000,  0x7A0000 },
  { size16MB,   "KERNEL",      0x00040000,  0x7A0000 },

  { size1MB,    "NVRAM",       0x000F0000,  0x10000 },
  { size2MB,    "NVRAM",       0x001F0000,  0x10000 },
  { size4MB,    "NVRAM",       0x003F0000,  0x10000 },     //default NVRAM size 64KB
  { size8MB,    "NVRAM",       0x007E0000,  0x20000 },     //NVRAM need keep at least 1 top flash sector size
  { size16MB,   "NVRAM",       0x007E0000,  0x20000 },   

  { size1MB,    "WHOLEFLASH",  0x00000000,  0x100000 },
  { size2MB,    "WHOLEFLASH",  0x00000000,  0x200000 },
  { size4MB,    "WHOLEFLASH",  0x00000000,  0x400000 },
  { size8MB,    "WHOLEFLASH",  0x00000000,  0x800000 },
  { size16MB,   "WHOLEFLASH",  0x00000000, 0x1000000 },

  { size1MB,    "BSP",         0x00000000,  0x50000 },
  { size2MB,    "BSP",         0x00000000,  0x50000 },
  { size4MB,    "BSP",         0x00000000,  0x50000 },
  { size8MB,    "BSP",         0x00000000,  0x50000 },
  { size16MB,   "BSP",         0x00000000,  0x50000 },


Therefore, using the flash identification operand /fc:115 for 16MB Spansion chips, which are fully supported, would work for 32/64/128Mb spansion chips which are yet to be 'fully' supported in zjtag, brjtag, tjtag, xjtag and others. This also applies to flash chips made by other flash chip manufactures ie. Macronix, SST, ATMEL, EON, etc. We simply need to identify the nearest supported 8/16MB chip for the chip we have.

The only limitation to this workaround is in attempting to delete / wipe the entire flash chip.

As we can see in the code above, a -erase:WHOLEFLASH for a 16MB chip ends with flash region 0x1000000. To fully erase a >= 32MB flash chip, we will need to identify the flash end region (length) for the flash chip we are working with and use the /window: /start: /length: operands with /erasechip.

The real work lies in carrying out a '2-step initialization' of non-supported CPUs, which in my case was the BRCM 0x4706, so that we're able to effectively read/write to supported/non-supported flash chips. This hack 'could potentially' put an end to non-supported CPUs in jtag software.

The guide is still WIP.. I am planning on releasing it as soon as I am done going over my notes and replicating the hack on parallel jtag boards.

V
socal87
DD-WRT Guru


Joined: 30 Jun 2009
Posts: 944
Location: Here

PostPosted: Sat Jan 12, 2013 19:11    Post subject: Reply with quote
You said you were able to successfully recover your router. Please share the details. I have requested both here and on the TiaoWiki forums for such information. Thanks.
_________________
Click here for Eko beta
Click here for Brainslayer beta

>>>PEACOCK THREAD!<<<

I do NOT offer personal assistance.
Please do not PM me for help.

leshan
DD-WRT Novice


Joined: 12 Sep 2007
Posts: 13

PostPosted: Sun Apr 14, 2013 17:49    Post subject: Reply with quote
For 16m chip, the kernel lenght is 0x7A0000?

W1SS wrote:
I've come up with a workaround for non-supported flash chips, at least for spansion chips; could work for other chips too.

After going through the source code of several jtag software, I noticed that the flash regions for cfe, nvram, kernel etc., are identical across the jtag software I analyzed, ie:

Code:

//---------   ----------     -----------  ------------
  //chip_size   area_name      area_start   area_length
  //                             offset
  //---------   ----------     -----------  ------------
  { size1MB,    "CFE",         0x00000000,  0x40000 },
  { size2MB,    "CFE",         0x00000000,  0x40000 },
  { size4MB,    "CFE",         0x00000000,  0x40000 },
  { size8MB,    "CFE",         0x00000000,  0x40000 },
  { size16MB,   "CFE",         0x00000000,  0x40000 },
  // for tiny CFE
  { size1MB,    "TFE",         0x00000000,  0x10000 },
  { size2MB,    "TFE",         0x00000000,  0x10000 },    //Tiny CFE usually for BCM ADSL device
  { size4MB,    "TFE",         0x00000000,  0x10000 },    //keep at least 64KB in size,
  { size8MB,    "TFE",         0x00000000,  0x10000 },    //Tiny CFE also need keep 1 bottom flash sector size.
  { size16MB,   "TFE",         0x00000000,  0x10000 },   

  { size1MB,    "KERNEL",      0x00040000,  0x0B0000 },
  { size2MB,    "KERNEL",      0x00040000,  0x1B0000 },
  { size4MB,    "KERNEL",      0x00040000,  0x3B0000 },
  { size8MB,    "KERNEL",      0x00040000,  0x7A0000 },
  { size16MB,   "KERNEL",      0x00040000,  0x7A0000 },

  { size1MB,    "NVRAM",       0x000F0000,  0x10000 },
  { size2MB,    "NVRAM",       0x001F0000,  0x10000 },
  { size4MB,    "NVRAM",       0x003F0000,  0x10000 },     //default NVRAM size 64KB
  { size8MB,    "NVRAM",       0x007E0000,  0x20000 },     //NVRAM need keep at least 1 top flash sector size
  { size16MB,   "NVRAM",       0x007E0000,  0x20000 },   

  { size1MB,    "WHOLEFLASH",  0x00000000,  0x100000 },
  { size2MB,    "WHOLEFLASH",  0x00000000,  0x200000 },
  { size4MB,    "WHOLEFLASH",  0x00000000,  0x400000 },
  { size8MB,    "WHOLEFLASH",  0x00000000,  0x800000 },
  { size16MB,   "WHOLEFLASH",  0x00000000, 0x1000000 },

  { size1MB,    "BSP",         0x00000000,  0x50000 },
  { size2MB,    "BSP",         0x00000000,  0x50000 },
  { size4MB,    "BSP",         0x00000000,  0x50000 },
  { size8MB,    "BSP",         0x00000000,  0x50000 },
  { size16MB,   "BSP",         0x00000000,  0x50000 },


Therefore, using the flash identification operand /fc:115 for 16MB Spansion chips, which are fully supported, would work for 32/64/128Mb spansion chips which are yet to be 'fully' supported in zjtag, brjtag, tjtag, xjtag and others. This also applies to flash chips made by other flash chip manufactures ie. Macronix, SST, ATMEL, EON, etc. We simply need to identify the nearest supported 8/16MB chip for the chip we have.

The only limitation to this workaround is in attempting to delete / wipe the entire flash chip.

As we can see in the code above, a -erase:WHOLEFLASH for a 16MB chip ends with flash region 0x1000000. To fully erase a >= 32MB flash chip, we will need to identify the flash end region (length) for the flash chip we are working with and use the /window: /start: /length: operands with /erasechip.

The real work lies in carrying out a '2-step initialization' of non-supported CPUs, which in my case was the BRCM 0x4706, so that we're able to effectively read/write to supported/non-supported flash chips. This hack 'could potentially' put an end to non-supported CPUs in jtag software.

The guide is still WIP.. I am planning on releasing it as soon as I am done going over my notes and replicating the hack on parallel jtag boards.

V
rovall
DD-WRT Novice


Joined: 01 Sep 2011
Posts: 1

PostPosted: Sun Jun 30, 2013 10:04    Post subject: Reply with quote
Made a donation a few days ago, from the site, and still got no download link or anything.
Is Tornado still available?
Malachi
DD-WRT Guru


Joined: 17 Jul 2012
Posts: 7209
Location: Columbus, Ohio

PostPosted: Sun Jun 30, 2013 11:27    Post subject: Reply with quote
rovall wrote:
Made a donation a few days ago, from the site, and still got no download link or anything.
Is Tornado still available?


I made my donation 2 weeks ago and still nothing. I posted on the TIAO forum asking how long it should take and an admin gave me a link to the download.
So try asking there.

_________________
I am far from a guru, I'm barely a novice.
manhquyet90
DD-WRT Novice


Joined: 28 Oct 2013
Posts: 26

PostPosted: Tue Oct 29, 2013 6:26    Post subject: Reply with quote
the_bhagwan wrote:
Just donated and used Tjtag for the first time today. Home built the simple interface. Worked Great!
I un-bricked a Belkin F7D7301.

Only problem was I have 6 computers in my house, all 64 bit. So I had to put some ram in an old 32 bit machine and fire it up. I see in post above Tornado is working on win7 x64bit, awesome.

By the way, the command that worked on this router was tjtag3 -erase:nvram /cable:DLC5 /fc:43 /byte_mode

Tried a serial adapter first but boot was in some kind of loop, so no-go. Then tried Tjtag, Bingo!

please guide me un-bricked my Belkin
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=178000
b3ta
DD-WRT Novice


Joined: 09 Dec 2013
Posts: 2

PostPosted: Mon Dec 09, 2013 12:16    Post subject: Reply with quote
Is this project still alive? Donated last friday, sent email - no response, no download link Sad
Malachi
DD-WRT Guru


Joined: 17 Jul 2012
Posts: 7209
Location: Columbus, Ohio

PostPosted: Mon Dec 09, 2013 13:05    Post subject: Reply with quote
b3ta wrote:
Is this project still alive? Donated last friday, sent email - no response, no download link Sad

Post here http://www.tiaowiki.com/forums/index.php?board=5.0
Volkan will take care of you.

_________________
I am far from a guru, I'm barely a novice.
b3ta
DD-WRT Novice


Joined: 09 Dec 2013
Posts: 2

PostPosted: Wed Dec 11, 2013 7:23    Post subject: Reply with quote
Thanks!
Found this site http://sourceforge.net/projects/tjtag/, tried it - had no luck.
Then I tried zjtag and it worked!
Goto page Previous  1, 2 Display posts from previous:    Page 2 of 2
Post new topic   Reply to topic    DD-WRT Forum Index -> Broadcom SoC based Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum