summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--flashrom.86
-rw-r--r--ft2232_spi.c8
-rw-r--r--util/z60_flashrom.rules4
3 files changed, 16 insertions, 2 deletions
diff --git a/flashrom.8 b/flashrom.8
index 76f25bd1f..7a012de8c 100644
--- a/flashrom.8
+++ b/flashrom.8
@@ -199,7 +199,8 @@ cards)"
based USB SPI programmer), including the DLP Design DLP-USB1232H, \
FTDI FT2232H Mini-Module, FTDI FT4232H Mini-Module, openbiosprog-spi, Amontec \
JTAGkey/JTAGkey-tiny/JTAGkey-2, Dangerous Prototypes Bus Blaster, \
-Olimex ARM-USB-TINY/-H, and Olimex ARM-USB-OCD/-H."
+Olimex ARM-USB-TINY/-H, Olimex ARM-USB-OCD/-H, and TIAO/DIYGADGET USB
+Multi-Protocol Adapter (TUMPA).
.sp
.BR "* serprog" " (for flash ROMs attached to a programmer speaking serprog), \
including AVR flasher by Urja Rannikko, AVR flasher by eightdot, \
@@ -441,7 +442,8 @@ syntax where
.B model
can be
.BR 2232H ", " 4232H ", " jtagkey ", " busblaster ", " openmoko ", " \
-arm-usb-tiny ", " arm-usb-tiny-h ", " arm-usb-ocd " or " arm-usb-ocd-h
+arm-usb-tiny ", " arm-usb-tiny-h ", " arm-usb-ocd ", " arm-usb-ocd-h \
+", or " tumpa
and
.B interface
can be
diff --git a/ft2232_spi.c b/ft2232_spi.c
index 8ab89fa3f..7a52718b6 100644
--- a/ft2232_spi.c
+++ b/ft2232_spi.c
@@ -29,9 +29,12 @@
#include "spi.h"
#include <ftdi.h>
+/* Please keep sorted by vendor ID, then device ID. */
+
#define FTDI_VID 0x0403
#define FTDI_FT2232H_PID 0x6010
#define FTDI_FT4232H_PID 0x6011
+#define TIAO_TUMPA_PID 0x8a98
#define AMONTEC_JTAGKEY_PID 0xCFF8
#define FIC_VID 0x1457
@@ -46,6 +49,7 @@
const struct usbdev_status devs_ft2232spi[] = {
{FTDI_VID, FTDI_FT2232H_PID, OK, "FTDI", "FT2232H"},
{FTDI_VID, FTDI_FT4232H_PID, OK, "FTDI", "FT4232H"},
+ {FTDI_VID, TIAO_TUMPA_PID, OK, "TIAO", "USB Multi-Protocol Adapter"},
{FTDI_VID, AMONTEC_JTAGKEY_PID, OK, "Amontec", "JTAGkey"},
{FIC_VID, OPENMOKO_DBGBOARD_PID, OK, "FIC",
"OpenMoko Neo1973 Debug board (V2+)"},
@@ -172,6 +176,10 @@ int ft2232_spi_init(void)
ft2232_interface = INTERFACE_A;
cs_bits = 0x18;
pindir = 0x1b;
+ } else if (!strcasecmp(arg, "tumpa")) {
+ /* Interface A is SPI1, B is SPI2. */
+ ft2232_type = TIAO_TUMPA_PID;
+ ft2232_interface = INTERFACE_A;
} else if (!strcasecmp(arg, "busblaster")) {
/* In its default configuration it is a jtagkey clone */
ft2232_type = FTDI_FT2232H_PID;
diff --git a/util/z60_flashrom.rules b/util/z60_flashrom.rules
index c2989681d..2b4ab6db9 100644
--- a/util/z60_flashrom.rules
+++ b/util/z60_flashrom.rules
@@ -72,4 +72,8 @@ ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="0004", MODE="664", GROUP="plugdev"
# http://olimex.com/dev/arm-usb-tiny-h.html
ATTRS{idVendor}=="15ba", ATTRS{idProduct}=="002a", MODE="664", GROUP="plugdev"
+# TIAO/DIYGADGET USB Multi-Protocol Adapter (TUMPA)
+# http://www.diygadget.com/tiao-usb-multi-protocol-adapter-jtag-spi-i2c-serial.html
+ATTRS{idVendor}=="0403", ATTRS{idProduct}=="8a98", MODE="664", GROUP="plugdev"
+
LABEL="flashrom_rules_end"