annotate eeproms/icestick @ 105:1e820ed0904e

Installed-binaries: list of binaries installed by this package I am establishing a new convention for all FreeCalypso tools, across different packages and source repositories: each FC tools package will have a file name Installed-binaries listing all user-invokable binaries that package installs in /opt/freecalypso/bin. These files are to serve as an aid to users and distro package maintainers who prefer to not add /opt/freecalypso/bin to their PATH. The alternative to adding this directory to PATH is to create a symlink for every installed binary in some standard location such as /usr/bin or /usr/local/bin, pointing to the actual binary in /opt/freecalypso/bin; having a list of all FC-installed binaries in a standardized format will allow this process to be automated.
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 29 Sep 2023 19:42:53 +0000
parents d46ea7a3fa0c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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: 3
diff changeset
22 ftdi-chip FT2232H
d46ea7a3fa0c eeproms: add ftdi-chip and eeprom settings as appropriate
Mychaela Falconia <falcon@freecalypso.org>
parents: 3
diff changeset
23 eeprom 93C56
d46ea7a3fa0c eeproms: add ftdi-chip and eeprom settings as appropriate
Mychaela Falconia <falcon@freecalypso.org>
parents: 3
diff 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