FreeCalypso > hg > fc-usbser-tools
annotate eeproms/icestick @ 86:b7397959ae68
cp2102-decode-ee-desc: show bMaxPacketSize0 in decimal
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Wed, 27 Sep 2023 18:46:10 +0000 | 
| parents | d46ea7a3fa0c | 
| children | 
| rev | line source | 
|---|---|
| 3 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 # Lattice iCEstick FPGA board features an FT2232H chip, with Channel A wired | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 # for MPSSE mode (access to SPI flash and FPGA configuration controls) and | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 # Channel B wired as a UART for user logic implemented in the FPGA. This | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 # FT2232H subsystem includes a 93C56 EEPROM, but boards are shipped with it | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 # blank, causing the FT2232H chip to take its default VID:PID. | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 # | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 # Having this default VID:PID causes undesirable behavior under Linux: a pair | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 # of ttyUSB devices is created upon plug-in, but the first of these two then | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 # disappears when the developer runs iceprog to manipulate FPGA programming, | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 # creating a gap in ttyUSB device numbers. And even if you are working with a | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 # stable logic design and not running iceprog, the first of the two created | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 # ttyUSB devices is still bogus, as that hardware channel is wired for MPSSE | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 # and not UART. | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 # | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 # In Falconian queendom, the solution to this problem is to program the EEPROM | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 # behind the FT2232H chip with our own image and set the USB ID to a code that | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 # tells the Linux kernel to create a ttyUSB device only for Channel B - the | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 # so-called "JTAG quirk". Falconia Partners LLC got a block of 8 PIDs | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 # officially allocated to us by FTDI, and since 2020-09 the mainline Linux | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 # kernel recognizes two of them as JTAG quirks. Use one of those two PIDs. | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 | 
| 78 
d46ea7a3fa0c
eeproms: add ftdi-chip and eeprom settings as appropriate
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 22 ftdi-chip FT2232H | 
| 
d46ea7a3fa0c
eeproms: add ftdi-chip and eeprom settings as appropriate
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 23 eeprom 93C56 | 
| 
d46ea7a3fa0c
eeproms: add ftdi-chip and eeprom settings as appropriate
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 24 | 
| 3 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 vid 0x0403 # FTDI | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 pid 0x7150 # Allocated by FTDI to Falconia, JTAG quirk in Linux | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 manuf Lattice | 
| 
434806360d91
eeproms: subset import from freecalypso-hwlab
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 product ICE40HX1K-STICK-EVN | 
