David Brownell <david-b@pacbell.net>:
[openocd.git] / NEWTAPS
blobc92308201a22deb3ad1b509dc803456e1879d2bf
1 Reporting Unknown JTAG TAP IDS
2 ------------------------------
4 If OpenOCD reports an UNKNOWN or Unexpected Tap ID please report it to
5 the development mailing list - However - keep reading.
7 openocd-development@lists.berlios.de.
9 ========================================
11 About "UNEXPECTED" tap ids.
13   Before reporting an "UNEXPECTED TAP ID" - take a closer look.
14   Perhaps you have your OpenOCD configured the wrong way, maybe you
15   have the tap configured the wrong way? Or something else is wrong.
16   (Remember: OpenOCD does not stop if the tap is not present)
18   This "tap id check" is there for a purpose.
19   The goal is to help get the *right* configuration.
21 The idea is this:
23   Every JTAG tap is suppose to have "a unique 32bit tap id" number.
24   They are suppose to be "sort of unique" but they are not.  There are
25   no guarantees.
27 Version Number Changes:
29   Sometimes, the tap ID only differs by VERSION number. If so - it's
30   not a big deal.  Please do report this information.  We'd like to
31   know about it.
33   For example 
35 Error:  ERROR: Tap: s3c4510.cpu - Expected id: 0x3f0f0f0f, Got: 0x1f0f0f0f
36 Error:  ERROR: expected: mfg: 0x787, part: 0xf0f0, ver: 0x3
37 Error:  ERROR:      got: mfg: 0x787, part: 0xf0f0, ver: 0x1
39 ========================================
41 Updating the Tap ID number your self
43   Why do this? You just want the warning to go away.  And don't want
44   to update your version/instance of OpenOCD.
46   On simple systems, to fix this problem, in your "openocd.cfg" file,
47   override the tap id.  Depending on the tap, add one of these 3
48   commands:
50         set CPUTAPID   newvalue
51   or    set BSTAPID    newvalue
52   or    set FLASHTAPID newvalue
53   or    set ETMTAPID   newvalue
55   Where "newvalue" is the new value you are seeing.
57   On complex systems, (with many taps and chips) you probably have a
58   custom configuration file. Its is more complicated, you're going to
59   have to read through the configuration files
61 ========================================
63 What to send:
65 Cut & paste the output of OpenOCD that pointed you at this file.
67 Please include the VERSION number of OpenOCD you are using.
69 And please include the information below.
71 ========================================
73 A) The JTAG TAP ID code.
75 This is always a 32bit hex number.
77 Examples:
78     0x1f0f0f0f - is an old ARM7TDMI
79     0x3f0f0f0f - is a newer ARM7TDMI
80     0x3ba00477 - is an ARM cortex M3
82 Some chips have multiple JTAG taps - be sure to list 
83 each one individually - ORDER is important!
85 ========================================
86 B) The maker of the part 
88 Examples:
89     Xilinx, Atmel, ST Micro Systems, Freescale
91 ========================================
92 C) The family of parts it belongs to
94 Examples:
95    "NXP LPC Series"
96    "Atmel SAM7 Series"
97    
98 ========================================
100 D) The actual part number on the package
102    For example: "S3C45101x01"
104 ========================================
106 E) What type of board it is.
108 ie: a "commercial off the self eval board" that one can purchase (as
109 opposed to your private internal custom board)
111 For example: ST Micro systems has Eval boards, so does Analog Devices
113 Or - if it is inside something "hackers like to hack" that information
114 is helpful too.
116 For example: A consumer GPS unit or a cellphone
118 ========================================
120 (F)   The maker of the board
121         ie: Olimex, LogicPD, Freescale(eval board)
123 ========================================
124          
125 (G)   Identifying information on the board.
127       Not good:   "iar red ST eval board"
129       Really good: "IAR STR912-SK evaluation board"
131 ========================================
133 (H) Are there other interesting (JTAG) chips on the board?
135     ie: An FPGA or CPLD ...
137 ========================================