view eeproms/jtag-unbuf @ 76:4e13c90c1405

eeproms/dumps/FT232R-notes: update for current understanding
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 17 Sep 2020 00:42:17 +0000
parents ace3ed1d5ddf
children 1d38af6d7be8
line wrap: on
line source

# This EEPROM configuration is meant to be programmed into COTS FT2232D
# breakout boards used as unbuffered JTAG adapters.  The custom USB VID:PID
# belongs to Falconia Partners LLC; we hereby allow the community to program
# this PID into generic FT2232D boards (not made by Falconia) as long as
# it is used for the present purpose with this full EEPROM configuration.
#
# The purpose of having a custom USB ID is to prevent the Linux kernel
# from treating this FT2232D instance as a dual UART and creating a
# ttyUSB device for Channel A; if you wish to use Channel B as a UART
# (which is still available for that purpose), you will need to make a
# one-liner patch to the ftdi_sio driver, telling it to treat this USB ID
# like other JTAG+UART adapters, creating a ttyUSB device only for Channel B.

vid 0x0403	# FTDI
pid 0x7151	# Allocated by FTDI to Falconia Partners LLC
manuf FTDI
product Unbuffered JTAG adapter

# We program Channel A to come up in the 245 FIFO mode prior to being
# switched into MPSSE mode by OpenOCD, as opposed to the default 232 UART mode.
# If the FT2232D chip's ADBUS pins are connected directly to the JTAG target
# without a buffer (what we mean by an unbuffered JTAG adapter), the default
# 232 UART mode is NOT safe, as it will produce a fight on the ADBUS2 line
# between the UART RTS output and the target's TDO output.  245 FIFO mode is
# expected to be safer, as all 8 ADBUS lines will be inputs for as long as
# the ACBUS2 line is left unconnected and not driven by anything.

byte00	0x01	# Channel A: FIFO mode, D2XX driver
byte01	0x08	# Channel B: UART mode, VCP driver