Any News About Jtag Flashing?


I've ordered a JTAG cable which I should get in a few days, but that will be primarily for debugging purposes.

From what Squidge has said in the past, there is no direct access from JTAG to the NAND. I have not heard of anyone flashing the NAND from JTAG yet, or perhaps they're just being secretive about it.
 
Are you sure you don't mean a serial cable, slygamer?

I don't think the serial cable does any good for flashing a bricked unit, and I don't think a JTAG has much use other than flashing because it is so slow.
 
There was a post linking to a spanish forum with a program to re-flash over JTAG, and also the dev who got USB host working originally loaded his modified kernels over JTAG (if one can get a kernel and ramdisk loaded, it should be easy to run the linux flasher app). So it's out there, and does work - someone who's got it working should write up a step by step and throw it on the wiki.

Even though JTAG is slow, it could be useful for linux kernel/HH debugging since it gives you direct access to memory and lets you do a memory dump even if the thing's hopelessly locked up.
 
To reflash nand from JTAG, you have to configure the memory, upload a program to the ram, and then run that program.

JTAG isn't slow - it's the interface thats slow. If you are connecting to the gp2x using nothing but a lead from your gp2x to your parallel port and basically wiggling the pins on the parallel port to talk to the gp2x, then yes it's going to be slow. If you however use a proper JTAG interface that connects from your pc to the jtag interface via usb, and then from the interface to the JTAG on the GP2X, then it'll be much quicker.

JTAG is perfect for debugging, and you can run GDB and other debuggers over JTAG. It's mostly suited for non-Linux developing though (like HH-mode), otherwise you could find yourself looking through thousands of lines of assembler, and then eventually find your actually in the middle of the Linux kernel, and no where near your actual program code.
 
BradN posted on Feb 14 2006 at 09:57 AM said:
There was a post linking to a spanish forum with a program to re-flash over JTAG, and also the dev who got USB host working originally loaded his modified kernels over JTAG (if one can get a kernel and ramdisk loaded, it should be easy to run the linux flasher app). So it's out there, and does work - someone who's got it working should write up a step by step and throw it on the wiki.
That's what we need. A step-by-step guide for the uneducated masses who are new to JTAG.

donny, I already have a serial cable. I've now ordered a Wiggler-compatible JTAG cable to play with. JTAG is not only for flashing, as Squidge and BradN has mentioned.
 
Last edited by a moderator:
well, thanks for the informative posts then :) . I hadn't heard of anyone using JTAG on the GP2X successfully at all yet. I hadn't even heard of JTAG before I started looking in to getting a GP2X.
 
donny662 posted on Feb 14 2006 at 07:42 PM said:
well at thanks for the informative posts then :) . I hadn't heard of anyone using JTAG on the GP2X successfully at all yet. I hadn't even heard of JTAG before I started looking in to getting a GP2X.

I have used jTAG to unbrick GP2X's with hosed boot loaders. All you really need to do on the GP2X front is wire up the EXT to a small circuit and chuck that in a Macraigor Wiggler (or make your own).

I am working (slowly as loads of other things in real life are going to s**t at the moment) to make working open source jTAG code based off the jTAG ARM9 project.
The jTAG code I have at the moment is of questionable status so I feel clean-room open code for re-flashing is the way forward. Most of the support for the GP2X is in there and working well and I am writing a tool to reflash the unit using a mixture of jTAG and reading from the SD, currently the process to recover a unit using jTAG is very clunky.
 
Last edited by a moderator:
Wow, that is great to hear DJWillis.

I wonder if this deserves its own SourceForge project?

BTW what information are using? ie is there a special protocol for the GP2X or is it closer to something else in the ARM9 marketplace that we can look at? What has been your experience with this?

Also would the standard Wiggiler circuit in things like Olimex's JTAG circuit be ok to use?
http://www.sparkfun.com/commerce/product_i...products_id=275
 
Dingo, that's the one I've ordered (except I've ordered it from Optimal Microsystems). The small circuit that DJ is referring to is described in the wiki (schematic available) and is an interface from the EXT port on the GP2X to the 20-pin connector of the JTAG cable.

Once you get the hardware, for debugging you can use software like openocd or ocdremote that gdb can connect to remotely. openocd and ocdremote convert gdb's remote debugging commands to JTAG commands. So, with openocd or ocdremote running on your PC, you then run gdb on your PC and it can run and debug applications on the GP2X.

As for flashing over JTAG, I'm going to wait for DJ's project to be released (now that I know about it).
 
DJWillis posted on Feb 14 2006 at 08:56 PM said:
I am working (slowly as loads of other things in real life are going to s**t at the moment) to make working open source jTAG code based off the jTAG ARM9 project.
The jTAG code I have at the moment is of questionable status so I feel clean-room open code for re-flashing is the way forward. Most of the support for the GP2X is in there and working well and I am writing a tool to reflash the unit using a mixture of jTAG and reading from the SD, currently the process to recover a unit using jTAG is very clunky.


Hi, any news about your JTAG-flashing project? I bricked my GP2X so could make good use of it ;)
 
Last edited by a moderator:
Back
Top