Thanks, guys.
Here is a page on decoding JTAG IDs.
http://www.arm.com/support/faqip/3843.htmlLets see if this stuff works.
Texas Instruments tells us that the JTAG ID for the DM355 core is 0x0B73B01F.
We also have "A610 (DigicII) - 0xB84DE025"
According to the above FAQ, the structure of the JTAG ID word is:
(my bit numbering is 31,30,...2,1,0)
31-28: Version: 4 bits for the core revision number.
27: ARM Core ID. Should be zero (0) if we have a valid ID.
26-24: Capability bits. See the table in the FAQ.
23-20: Family bits. ARM9 should be 0x09. Another way to tell if we have a valid JTAG ID.
19-12: Device number.
11-1: Manufacturer's ID. Set by the manufacturer.
0: Marker bit. Should always be "1".
So for the JTAG ID that TI gave for the DM355, 0x0B73B01F (0b 0000 1011 0111 0011 1011 0000 0001 1111), we have
31-28: Core version number: 0000
27: ARM Core ID: 1 <- This is supposed to be ZERO, according to the FAQ !
26-24: Capability bits: 011: Used in conjunction with the ARM Core ID, we get 1011, which supposedly is "ARM Trace Buffer (2).
23-20: Family bits: 0111: Seems to imply ARM7. But we know this device is ARM9.
19-12: Device number: 0011 1011. Used by the manufacturer. Meaningless to us ?
11-1: Manufacturer ID: 0000 0001 111: meaningless to us.
0: 1: marker bit. At least that worked !
I guess I am pretty skeptical that this structure applies to the TI chips being that the JTAG ID TI gave us doesn't really work. Am I missing something ?
Lets try the other JTAG ID, 0xB84DE025 or 0b 1011 1000 0100 1101 1110 0000 0010 0101
31-28: Core version number: 1011
27: ARM Core ID: 1 <- This is supposed to be ZERO, according to the FAQ !
26-24: Capability bits: 000: Used in conjunction with the ARM Core ID, we get 1000, which is Reserved, ie shouldn't be used. Hmmm...
23-20: Family bits: 0100: Not a valid ARM number.
19-12: Device number: 1101 1110 Used by the manufacturer. Meaningless to us ?
11-1: Manufacturer ID: 0000 0010 010: meaningless to us.
0: 1: marker bit. At least that worked !
Doesn't seem to work for either. Have I made a mistake somewhere ? Is it possible the byte orders are mixed up ?
If we believe the JTAG IDs in the FAQ, then right off the 3rd highest hex digit needs to be a 9, ie 0xXX9XXXXX.
Thoughts ?