annotate eeproms/jtag-unbuf @ 43:ea0b5aed9a9c

ftee-gen2232c reworked to support larger EEPROMs
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 22 Apr 2019 07:07:39 +0000
parents 60b8cf977c3f
children ace3ed1d5ddf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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