FreeCalypso > hg > freecalypso-hwlab
annotate eeproms/jtag-unbuf @ 49:b2e9a6f3c833
doc/FTDI-EEPROM-tools: document finished
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 22 Apr 2019 23:17:14 +0000 |
parents | 60b8cf977c3f |
children | ace3ed1d5ddf |
rev | line source |
---|---|
32
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 # This EEPROM configuration is meant to be programmed into COTS FT2232D |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 # breakout boards used as unbuffered JTAG adapters. The custom USB VID:PID |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 # belongs to Falconia Partners LLC; we hereby allow the community to program |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 # this PID into generic FT2232D boards (not made by Falconia) as long as |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 # it is used for the present purpose with this full EEPROM configuration. |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 # |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 # The purpose of having a custom USB ID is to prevent the Linux kernel |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 # from treating this FT2232D instance as a dual UART and creating a |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 # ttyUSB device for Channel A; if you wish to use Channel B as a UART |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 # (which is still available for that purpose), you will need to make a |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 # one-liner patch to the ftdi_sio driver, telling it to treat this USB ID |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 # like other JTAG+UART adapters, creating a ttyUSB device only for Channel B. |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 vid 0x0403 # FTDI |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 pid 0x7151 # Allocated by FTDI to Falconia Partners LLC |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 manuf FTDI |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 product Unbuffered JTAG adapter |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 # We program Channel A to come up in the 245 FIFO mode prior to being |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 # switched into MPSSE mode by OpenOCD, as opposed to the default 232 UART mode. |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 # If the FT2232D chip's ADBUS pins are connected directly to the JTAG target |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 # without a buffer (what we mean by an unbuffered JTAG adapter), the default |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 # 232 UART mode is NOT safe, as it will produce a fight on the ADBUS2 line |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 # between the UART RTS output and the target's TDO output. 245 FIFO mode is |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 # expected to be safer, as all 8 ADBUS lines will be inputs for as long as |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 # ACBUS2 and ACBUS2 are left unconnected and not driven by anything. |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 byte00 0x01 # Channel A: FIFO mode, D2XX driver |
60b8cf977c3f
unbuffered JTAG adapters: ID assigned and EEPROM config created
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 byte01 0x08 # Channel B: UART mode, VCP driver |