From 246db55ae46379fb8629cc3567d39a60a1e64d75 Mon Sep 17 00:00:00 2001 From: stefanct Date: Sat, 11 Jun 2011 12:21:37 +0000 Subject: add support for Olimex programmers to ft2232_spi - add support for Olimex' ARM-USB-TINY, ARM-USB-TINY-H, ARM-USB-OCD AND ARM-USB-OCD-H and adjust man page - minor string change ("First International Computer, Inc." -> "FIC") Signed-off-by: Pete Batard Acked-by: Stefan Tauner git-svn-id: https://code.coreboot.org/svn/flashrom/trunk@1331 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- flashrom.8 | 7 ++++--- ft2232_spi.c | 29 +++++++++++++++++++++++++++-- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/flashrom.8 b/flashrom.8 index 677e8db..41a1776 100644 --- a/flashrom.8 +++ b/flashrom.8 @@ -183,7 +183,7 @@ cards)" .BR "* it87spi" " (for flash ROMs behind an ITE IT87xx Super I/O LPC/SPI \ translation unit)" .sp -.BR "* ft2232_spi" " (for SPI flash ROMs attached to a FT2232H/FT4232H/JTAGkey \ +.BR "* ft2232_spi" " (for SPI flash ROMs attached to an FT2232/FT4232H family \ based USB SPI programmer)" .sp .BR "* serprog" " (for flash ROMs attached to a programmer speaking serprog)" @@ -361,8 +361,9 @@ type and interface/port it should support. For that you have to use the .sp syntax where .B model -can be any of -.BR 2232H ", " JTAGkey ", or " 4232H +can be one of +.BR 2232H ", " 4232H ", " jtagkey ", " openmoko ", " arm-usb-tiny ", " \ +arm-usb-tiny-h ", " arm-usb-ocd " or " arm-usb-ocd-h and .B interface can be any of diff --git a/ft2232_spi.c b/ft2232_spi.c index f37a698..7416e5b 100644 --- a/ft2232_spi.c +++ b/ft2232_spi.c @@ -38,13 +38,22 @@ #define FIC_VID 0x1457 #define OPENMOKO_DBGBOARD_PID 0x5118 +#define OLIMEX_VID 0x15BA +#define OLIMEX_ARM_OCD_PID 0x0003 +#define OLIMEX_ARM_TINY_PID 0x0004 +#define OLIMEX_ARM_OCD_H_PID 0x002B +#define OLIMEX_ARM_TINY_H_PID 0x002A + const struct usbdev_status devs_ft2232spi[] = { {FTDI_VID, FTDI_FT2232H_PID, OK, "FTDI", "FT2232H"}, {FTDI_VID, FTDI_FT4232H_PID, OK, "FTDI", "FT4232H"}, {FTDI_VID, AMONTEC_JTAGKEY_PID, OK, "Amontec", "JTAGkey"}, - {FIC_VID, OPENMOKO_DBGBOARD_PID, OK, - "First International Computer, Inc.", + {FIC_VID, OPENMOKO_DBGBOARD_PID, OK, "FIC", "OpenMoko Neo1973 Debug board (V2+)"}, + {OLIMEX_VID, OLIMEX_ARM_OCD_PID, NT, "Olimex", "ARM-USB-OCD"}, + {OLIMEX_VID, OLIMEX_ARM_TINY_PID, OK, "Olimex", "ARM-USB-TINY"}, + {OLIMEX_VID, OLIMEX_ARM_OCD_H_PID, NT, "Olimex", "ARM-USB-OCD-H"}, + {OLIMEX_VID, OLIMEX_ARM_TINY_H_PID, NT, "Olimex", "ARM-USB-TINY-H"}, {}, }; @@ -167,6 +176,22 @@ int ft2232_spi_init(void) ft2232_vid = FIC_VID; ft2232_type = OPENMOKO_DBGBOARD_PID; ft2232_interface = INTERFACE_A; + } else if (!strcasecmp(arg, "arm-usb-ocd")) { + ft2232_vid = OLIMEX_VID; + ft2232_type = OLIMEX_ARM_OCD_PID; + ft2232_interface = INTERFACE_A; + } else if (!strcasecmp(arg, "arm-usb-tiny")) { + ft2232_vid = OLIMEX_VID; + ft2232_type = OLIMEX_ARM_TINY_PID; + ft2232_interface = INTERFACE_A; + } else if (!strcasecmp(arg, "arm-usb-ocd-h")) { + ft2232_vid = OLIMEX_VID; + ft2232_type = OLIMEX_ARM_OCD_H_PID; + ft2232_interface = INTERFACE_A; + } else if (!strcasecmp(arg, "arm-usb-tiny-h")) { + ft2232_vid = OLIMEX_VID; + ft2232_type = OLIMEX_ARM_TINY_H_PID; + ft2232_interface = INTERFACE_A; } else { msg_perr("Error: Invalid device type specified.\n"); free(arg); -- cgit v1.2.1