Add support for the GOEPEL PicoTAP programmer

http://www.goepel.com/en/jtagboundary-scan/hardware/picotap.html

This device is actually a JTAG adapter, but since it uses standard
FT2232 A interface pins, it can be easily used as SPI programmer
(tested it here successfully). PicoTAP supports only 5V output, so one
needs to reduce this to 3.3V in a same manner as DLP Design DLP-USB1232H, see

  http://flashrom.org/FT2232SPI_Programmer#DLP_Design_DLP-USB1232H

for details.

The PicoTAP pin-out is as follows:

  PicoTAP |  SPI
 ---------+-------
    TCK   | SCLK
    TMS   |  CS#
    TDI   |  SO
    TDO   |  SI
   /TRST  |  -
    GND   |  GND
    +5V   |  VCC, HOLD# & WP# after 3.3V regulator

I managed to run PicoTAP in 10MHz, 15MHz and 30MHz modes (by forcing
DIVIDE_BY), against SST25VF016B SPI flash, read/write/erase all worked
fine (write seems somewhat slow).

Corresponding to flashrom svn r1453.

Signed-off-by: Samir Ibradžić <sibradzic@gmail.com>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
diff --git a/ft2232_spi.c b/ft2232_spi.c
index 7a52718..8d89ea1 100644
--- a/ft2232_spi.c
+++ b/ft2232_spi.c
@@ -37,6 +37,9 @@
 #define TIAO_TUMPA_PID		0x8a98
 #define AMONTEC_JTAGKEY_PID	0xCFF8
 
+#define GOEPEL_VID		0x096C
+#define GOEPEL_PICOTAP_PID	0x1449
+
 #define FIC_VID			0x1457
 #define OPENMOKO_DBGBOARD_PID	0x5118
 
@@ -51,6 +54,7 @@
 	{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"},
+	{GOEPEL_VID, GOEPEL_PICOTAP_PID, OK, "GOEPEL", "PicoTAP"},
 	{FIC_VID, OPENMOKO_DBGBOARD_PID, OK, "FIC",
 		"OpenMoko Neo1973 Debug board (V2+)"},
 	{OLIMEX_VID, OLIMEX_ARM_OCD_PID, NT, "Olimex", "ARM-USB-OCD"},
@@ -176,6 +180,10 @@
 			ft2232_interface = INTERFACE_A;
 			cs_bits = 0x18;
 			pindir = 0x1b;
+		} else if (!strcasecmp(arg, "picotap")) {
+			ft2232_vid = GOEPEL_VID;
+			ft2232_type = GOEPEL_PICOTAP_PID;
+			ft2232_interface = INTERFACE_A;
 		} else if (!strcasecmp(arg, "tumpa")) {
 			/* Interface A is SPI1, B is SPI2. */
 			ft2232_type = TIAO_TUMPA_PID;