FreeCalypso > hg > fc-usbser-tools
view doc/Shipped-EEPROM-configs @ 68:5cbde3c80c24
fteeprom-{erase,prog}: detach logic: change to detach by default
As it turns out, detaching all ttyUSB interfaces of a multichannel device
does not require outside knowledge of how many channels there are, as in
our previous -d option design that is being removed here - instead we can
read the bNumInterfaces constant from the USB device's config descriptor
and thus know how many interfaces there are in total. Based on this
discovery, change the design of fteeprom-{erase,prog} as follows:
* remove -d option;
* flip the default to where we detach all interfaces by default;
* add -n option to NOT detach any interfaces.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Wed, 13 Sep 2023 06:37:03 +0000 |
parents | 825d3303b886 |
children |
line wrap: on
line source
There are a number of ready-made FTDI EEPROM config files shipped with fc-usbser-tools package, intended to serve as inputs to ftee-gen* tools. This article describes these shipped EEPROM configs. duart28c and duart28s ===================== FreeCalypso DUART28 is an FT2232D-based custom hardware adapter produced in year 2020. There are two valid EEPROM configs for this adapter, named DUART28C and DUART28S - see DUART28-EEPROM-config article for further details. ft2232-example ============== This config file is an example EEPROM config for FT2232x chips, valid for both FT2232C/D and FT2232H. It is intended to serve as a starting point for custom FT2232x EEPROM configurations. ft232r-example ============== This config file is an example EEPROM config for FT232R. It is intended to serve as a starting point for custom FT232R EEPROM configs. icestick ======== Lattice iCEstick is a handy FPGA board with an FT2232H USB interface chip, supporting SPI programming via MPSSE on Channel A and UART communication with user logic via FT2232H Channel B. However, instead of programming this FT2232H chip's EEPROM with a distinctive USB VID:PID which Linux kernel ftdi_sio driver can recognize as a JTAG quirk, Lattice ships these boards with blank EEPROMs, causing the usual well-known problems with unquirked ftdi_sio binding. Our supplied EEPROM config named "icestick" is intended as the solution: program it into the EEPROM on your iCEstick board, and the binding of ftdi_sio driver becomes sensible, with a ttyUSB device created only for Channel B. jtag-unbuf ========== This EEPROM config is meant for generic (non-specialized) FT2232D breakout boards used as unbuffered JTAG adapters, as described in this old guide from 2019: https://www.freecalypso.org/hg/freecalypso-hwlab/file/tip/doc/Unbuffered-FT2232x-JTAG mcu-host-bus ============ This EEPROM config is meant for the same generic FT2232D breakout boards used in MCU host bus emulation mode, which takes up both channels and leaves no UART.